图的定义和一些概念
图(Graph)是由顶点V的有穷非空集合和顶点之间的边E的集合组成。通常表示为 G(V,E)。
顶点(Vertex):图的基本数据元素。
边(Edge):无向边 (A,D)。
弧(Arc):有向边 <A,D>,A是弧尾,D是弧头。
线性表 | 元素 | 可以为空表 |
树 | 结点 | 可以为空树 |
图 | 顶点 | 必须非空 |
有些边或弧带有数值,这些数就是权重(Weight),带权的图称为网(Network)。
无向图G中,任意两个顶点都存在路径,则G是连通图(Connected Graph)。如果是在有向图中,则称强连通图。
由连通图衍生到生成树的概念:
生成树是n个顶点n-1条边且连通的图。n个顶点时,若小于n-1条边则图非连通,若大于n-1条边则图必有环。
图的存储
邻接矩阵
有向图示例(左),有向网示例(右)
无向网的邻接矩阵创建:
#define MAXVEX 100 /*最大顶点数*/
#defi