图的定义
图是由顶点的有穷非空集合和顶点之间的边的集合组成,通常表示为G(V,E),其中G表示一个图,V是图G中顶点(Vertex)的集合,E是图G中边(Edge)的集合。
Note: 线性表中,相邻的数据元素之间有线性关系,树中,相邻两层的结点有层次关系,图中,任何两个顶点可能有关系,顶点之间的关系用边来表示。
无向边:如果顶点之间的边没有方向,则成为无向边
Eg:顶点集合V={1,2,3,4,5,6,7,8,9}, 边集合Edge={ (1,2),(1,3)….}
如果任何两个顶点都有边,那么该图成为无向完全图,总边数 = n*(n-1)/2
有向边:如果顶点之间的边有方向,则成为无向边,也称作弧(Arc)
跟图的边或者弧相关的树叫做 权(Weight)
顶点的度就是就是和顶点相关的边的数目;
图的抽象数据类型
-CreateGraph(*G,V,VR)
-DestroyGraph(*G)
-LocateVex(G,u)
-GetVex(G,v)
-DFSTraverse(G)
-HFSTraverse(G)
图的存储结构
-邻接矩阵
顶点数组 Vex[4] = {v0,v1,v2,v3}
边数组 Edge[4][4] =