本文共 1024 字,大约阅读时间需要 3 分钟。
//邻接表#includeusing namespace std;#define MAXNODE 100//最大顶点数typedef char VertexType;//顶点类型typedef int EdgeTypd;//边权数据类型typedef struct EdgeNOde//边表节点{ int node_index; EdgeTypd weight; struct EdgeNOde* next;}EdgeNOde;typedef struct VertexNode//顶点表节点{ VertexType data; EdgeNOde *firstedge;}VertexNode,MyList[MAXNODE];typedef struct{ MyList mylist; int num_Edge,num_Node;}GraphList;void CreateGraph(GraphList &G){ EdgeNOde *pe; cin>>G.num_Node>>G.num_Edge; for(int i=0;i >G.mylist[i].data; G.mylist[i].firstedge=NULL; } int vi,vj; for(int j=0;j >vi>>vj; pe=(EdgeNOde*)malloc(sizeof(EdgeNOde)); pe->node_index=j; pe->next=G.mylist[vi].firstedge; G.mylist[vi].firstedge=pe; pe=(EdgeNOde*)malloc(sizeof(EdgeNOde)); pe->node_index=vi; pe->next=G.mylist[vj].firstedge; G.mylist[vj].firstedge=pe; }}int main(){ GraphList G; CreateGraph(G); return 0;}
参考大佬代码写的模板
转载地址:http://umqbi.baihongyu.com/