//邻接表 互换 矩阵 //邻接矩阵-》邻接表 void MatrixToList(Graph &G,int A[][]){ for(int i=0;i<G.vertices;i++){ adjList[i].firstarc=null; } for(int i=0;i<G.vertices;i++){ for(int j=0;j<G.vertices;j++){ if(A[i][j]==1){ ENode *p=(ENode*)malloc(sizeof(ENode)); p->adjvex=j; //头插 p->nextarc=adjList.firstarc; adjList[i].firstarc=p; } } } } //邻接表-》邻接矩阵 void ListToMat(Graph G,AdjMatrix &M){ ENode *p; for(int i=0;i<G.vertices;i++){ for(int j=0;j<G.vertices;j++){ M.A[i][j]=0; } } for(int i=0;i<G.vertices;i++){ p=adjList[i].firstarc; while(p!=null){ M.A[i][p->adjvex]=1; p=p->nextarc; } } }
邻接表与邻接矩阵互换
猜你喜欢
转载自www.cnblogs.com/zzuuoo666/p/12100757.html
今日推荐
周排行