在图的邻接矩阵表示中,有一个记录各个顶点信息的顶点表(一维数组),还有一个表示各个顶点之间关系(边)的邻接矩阵(二维数组)。
typedef char VertexData;
typedef struct{
GraphKind kind; /*图的种类标志*/
int vexnum, arcnum; /*图的顶点数和弧数*/
VertexData vertex[MAX_VERTEX_NUM]; /*顶点向量*/
ArcNode arcs[MAX_VERTEX_NUM][MAX_VERTEX_NUM];/*邻接矩阵*/
}AdjMatrix;
邻接表:是图的一种链式存储结构。
邻接表表示的图存储结构:
typedef char VertexData; //顶点数据类型
typedef int EdgeData; //边上权值类型
typedef struct node { //边结点
int dest; //目标顶点下标
EdgeData cost; //边上的权值
Struct node * link; //下一边链接指针
} EdgeNode;
明天会更好!.
原文:https://www.cnblogs.com/iGGBond/p/13021917.html