学习笔记6

时间:2020-05-30
本文章向大家介绍学习笔记6,主要包括学习笔记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;       

原文地址:https://www.cnblogs.com/bwzh/p/12967164.html