欢迎大家访问我的个人博客:endeavorchuan.com
有向完全图: 有向图中有n个顶点,则边至多有n(n-1)条,有n(n-1)条边的有向图称为有向完全图。
无向完全图: 无向图中有n个顶点,最多有n(n-1)/2条边,有n(n-1)/2的无向图称为无向完全图。
简单路径: 序列中顶点不重复出现的路径。
连通图: 无向图中任意两个顶点之间都连通。
强连通图: 对于每一对顶点i和j,从i到j和从j到i都有路径。
邻接矩阵
邻接矩阵是图的顺序存储结构,由邻接矩阵行数或列数可知图中顶点数。
无权图邻接矩阵:
有权图邻接矩阵:
邻接矩阵结构型定义:
typedef struct
{
int no; //定义顶点编号
char info; //可存储顶点其他信息,使用char类型
}VertexType; //顶点类型
typedef struct //图的定义
{
int edges[maxSize][maxSize]; //邻接矩阵定义,有权图中,将int改为float
int n,e; //n代表顶点数,e代表边数
VertexType vex[maxSize]; //存放结点信息
}MGraph; //图的邻接矩阵类型
邻接表
邻接表是图的链式存储结构,对图中每个顶点i建立一个单链表,每个单链表第一个结点存放顶点信息,其余结点存放边的信息。
图的邻接表存储:
邻接表存储表示的定义:
typedef