学习笔记6

图的表示法及定义

设图 A = (V, E)是一个有 n 个顶点的图, 图的邻接矩阵是一个二维数组 A [n][n],图的邻接矩阵表示法也称为:数组表示法

无向图的邻接矩阵是对称的; 有向图的邻接矩阵可能是不对称的。

在有向图中, 统计第 i 行 1 的个数可得顶点 i 的出度, 统计第 j 列 1 的个数可得顶点 j 的入度。
在无向图中, 统计第 i 行 (列) 1 的个数可得顶点i 的度。

无向图(n个结点)的邻接矩阵是对称矩阵,可采用压缩存储法(下三角),其存储空间至少需要n(n-1)/2个存储空间。
有向图的邻接矩阵不一定不是对称矩阵
有向图的邻接矩阵需要n^2个存储空间。

邻接矩阵的定义:

typedef char VertexData; 
typedef  struct{
	GraphKind kind;                              /*图的种类标志*/
	int vexnum, arcnum;                          /*图的顶点数和弧数*/
	VertexData vertex[MAX_VERTEX_NUM];           /*顶点向量*/
	ArcNode arcs[MAX_VERTEX_NUM][MAX_VERTEX_NUM];/*邻接矩阵*/
}AdjMatrix;       
上一篇:使用numpy在python中进行向量化空间距离


下一篇:Valid BFS?