Julia999 发表于 2019-8-4 21:26:41

图:存储(邻接矩阵法)

邻接矩阵法:(其实,这个名字如果你好好学习离散数学的话,肯定记得,所以,还是那句话,好好听课~~~)结点数为n的图G=(V,E)的邻接矩阵A是nxn的。(为啥?n个顶点,记录n行n列)
将G的顶点编号为V1,V2....Vn(数组下标)
若<Vi,Vj>∈E,则A=1,否则等于0


那么,网怎么存放?简单~对应的二维数组中存放权重,如果不存在边,就存无穷或者0{:9_227:}


定义:
#define MaxVertexNum 100
typedef char VertexType;
typedef int EdgeType;
typedef struct{
    VertexType Vex;
    EdgeType Edge;
    int vexnum,arcnum;
}MGraph;由上面可知,邻接矩阵法的空间复杂度为O(n2),适用于稠密图
无向图的邻接矩阵为对称矩阵

设图G的邻接矩阵为A,矩阵运算An的含义:
A2=2表示从顶点V2到顶点V5长度为2的顶点的路径有2条


页: [1]
查看完整版本: 图:存储(邻接矩阵法)