第九章 图 9.1 图的基本概念

来源:互联网 发布:益购阁网络交易平台 编辑:程序博客网 时间:2024/06/01 20:18

在图形结构中,每个元素可以有零个或多个前驱元素,也可以有零个或多个后继元素,也就是说,元素之间的关系是任意的。

9.1 图的基本概念

9.1.1 图的定义

采用形式化的定义,图(graph)G由两个集合V(vertex)和E(edge)组成,记为G=(V,E),其中V是顶点的有限集合,记为V(G),E是连接V中两个不同顶点(顶点对)的边的有限集合,记为E(G)。

抽象数据类型图的定义如下:
ADT Graph{数据对象:D={ai|1<=i<=n,n>=0,ai属ElemType类型}                                     /*ElemType是C/C++的类型标识符*/          数据关系:    R={<ai,aj>|ai,aj属D,1<=i<=n,1<=j<=n,其中每个元素可以有零个或多个前驱,可以有零个或多个后继}         基本运算:  InitGraph(&g):初始化图:构造一个空图g。  ClearGraph(&g):销毁图:释放图g占用的存储空间。  DFS(&g):深度优先遍历图g。  BFS(g):广度优先遍历图g。}

无向图与有向图

在图G中,如果代表边的顶点对是无序的,则称G为无向图,无向图中代表边的无序顶点对通常用圆括号括起来,用以表示一条无向边。
如果表示边的顶点对是有序的,则称G为有向图,在有向图中代表边的顶点对通常用尖括号括起来,用以表示一条有向边(又称为弧),如<vi,vj>表示从顶点vi到顶点vj的一条弧,顶点vi称为<vi,vj>的尾,顶点vj称为<vi,vj>的头。用由尾指向头的箭头形象地表示一条弧。可见<vi,vj>和<vj,vi>是两条不同的弧。

9.1.2 图的基本术语

1. 端点和邻接点

在一个无向图中,若存在一条边(vi,vj),则称vi和vj为该边的两个端点,并称它们互为邻接点,即vi是vj的一个邻接点,vj也是vi的一个邻接点。在一个有向图中,若存在一条边<vi,vj>,则称此边是顶点vi的一条出边,同时也是顶点vj的一条入边;称vi和vj分别为此边的起始端点(简称为起点)和终止端点(简称终点);称vi和vj互为邻接点,并称vj是vi的出边邻接点,vi是vj的入边邻接点。

2.顶点的度、入度和出度

在无向图中,顶点所具有的边的数目称为该顶点的度。在有向图中,顶点vi的度又分为入度和出度,以顶点vi为终点的入边的数目,称为该顶点的入度。以顶点vi为起点的出边的数目,称为该顶点的出度。一个顶点的入度和出度的和为该顶点的度。
若一个图中有n个顶点和e条边,每个顶点的度为di(1<=i<=n),则有:

3.完全图

若无向图中的每两个顶点之间都存在着一条边,有向图中的每两个顶点之间都存在着方向相反的两条边,则称此图为完全图。完全无向图包含有n(n-1)/2条边,完全有向图包含有n(n-1)条边。

完全无向图第一个顶点有n-1条不重复边,第n个顶点有0条不重复边,根据等差公式:有n(n-1)/2
完全有向图每个顶点都有n-1条不重复边,所以n(n-1)

4. 稠密图、稀疏图

当一个图接近完全图时,则称为稠密图。相反,当一个图含有较少的边数(即当e<<n(n-1))时,则称为稀疏图。

5.子图

设有两个图G=(V,E)和G’=(V',E'),若V‘是V的子集,即,且E’是E的子集,即,则称G‘是G的子图

6.路径和路径长度

在一个图G=(V,E)中,从顶点vi到顶点vj的一条路径是一个顶点序列(vi,vi1,vi2,...,vim,vj),若此图G是无向图,则边(vi,vi1),(vi1,vi2),...,(vim-1,vim),(vim,vj)属于E(G);若此图是有向图,则<vi,vi1>,<vi1,vi2>,...,<vim-1,vim>,<vim,vj>属于E(G)。路径长度是一条路径上经过的边的数目。若一条路径上除开始点和结束点可以相同外,其余顶点均不相同,则称此路径为简单路径。

7.回路或环

若一条路径上的开始点与结束点为同一个顶点,则此路径被称为回路或环。开始点与结束点相同的简单路径被称为简单回路或简单环。

8.连通、连通图和连通分量

在无向图G中,若从顶点vi到顶点vj有路径,则称vi和vj是连通的。若图G中任意两个顶点都连通,则称G为连通图,否则称为非连通图。无向图G中的极大连通子图称为G的连通分量。任何连通图的连通分量只有一个,即本身,而非连通图有多个连通分量。

9.强连通图和强连通分量

在有向图G中,若从顶点vi到顶点vj有路径,则称从vi到vj是连通的。若图G中的任意两个顶点vi和vj都连通,即从vi到vj和从vj到vi都存在路径,则称图G是强连通图。有向图G中的极大强连通子图称为G的强连通分量。强连通图只有一个强连通分量,即本身,非强连通图有多个强连通分量。

10.关节点和重连通图

假如在删除图中顶点vi以及相关联的各边后,将图的一个连通分量分割成两个或多个连通分量,则称顶点vi为该图的关节点。一个没有关节点的连通图称为重连通图。

11.权和网

图中每一条边都可以附有一个对应的数值,这种与边相关的数值称为权。权可以表示从一个顶点到另一个顶点的距离或花费的代价。边上带有权的图称为带权图,也称作网。


111
原创粉丝点击