图的基本概念和术语
- 图的定义
G = ( V , E ) V (Vertex):顶点(数据元素)的有穷非空集合; E (Edge):边的有穷集合。 \begin{aligned} &G=(V,E) \\ &V\text{(Vertex):顶点(数据元素)的有穷非空集合;} \\ &E\text{(Edge):边的有穷集合。} \end{aligned} G=(V,E)V(Vertex):顶点(数据元素)的有穷非空集合;E(Edge):边的有穷集合。 - 有向图:图中每条边都是有方向的,有向图的边也称作“弧”
- 无向图:图中每条边都是无方向的
- 完全图:图中任意两个顶点之间都有一条边相连。完全图分为有向完全图和无向完全图,如下图示
若图中有 n n n个顶点,无向完全图共有 C n 2 = n ( n − 1 ) 2 C_n^2=\frac{n(n-1)}{2} Cn2=2n(n−1)条边,而有向完全图共有 2 C n 2 = n ( n − 1 ) 2C_n^2=n(n-1) 2Cn2=n(n−1)条边。 - 稀疏图:有很少边或弧的图( e < n log n e<n\log n e<nlogn), e e e为边或弧的数目, n n n为顶点数目
- 稠密图:有较多边或弧的图
- 网:边/弧带权的图
- 邻接:有边/弧相连的两个顶点之间的关系。在无向图中,存在 ( V i , V j ) (V_i,V_j) (Vi,Vj),则称 V i V_i Vi和 V j V_j Vj互为邻接点;同样,在有向图中,存在 < V i , V j > <V_i,V_j> <Vi,Vj>,则称 V i V_i Vi邻接到 V j V_j Vj, V j V_j Vj邻接于 V i V_i Vi。
- 关联(依附):边/弧与顶点之间的关系。存在 ( V i , V j ) (V_i,V_j) (Vi,Vj)/ < V i , V j > <V_i,V_j> <Vi,Vj>,则称该边关联于 V i V_i Vi和 V j V_j Vj。
- 顶点的度:与某顶点 v v v相关联的边/弧的数目,记为TD( v v v)。在有向图中,顶点的度等于该顶点的入度和出度之和。顶点 v v v的入度是以 v v v为终点的有向边的条数,记作ID( v v v);而顶点 v v v的出度是以 v v v为始点的有向边的条数,记作OD( v v v)。
- 路径:接续的边构成的顶点序列。
- 路径长度:路径上的边/弧数目,或权值之和。
- 回路(环):第一个顶点和最后一个顶点相同的路径。
- 简单路径:除路径起点和终点可以相同外,其他顶点均不相同的路径。
- 简单回路(简单环):除路径起点和终点相同外,其余顶点均不相同的路径。
- 连通图/强连通图:在无/有向图 G = ( V , { E } ) G=(V,\{E\}) G=(V,{
E})中,若对任意两个顶点 v , u v,u v,u都存在从 v v v到 u u u的路径,则称 G G G是连通图/强连通图。
- 权与网:图中边或弧所具有的相关系数称为权。带权的图称为网。
- 子图:设有两个图 G = ( V , { E } ) G=(V,\{E\}) G=(V,{ E}), G 1 = ( V 1 , { E 1 } ) G_1=(V_1,\{E_1\}) G1=(V1,{ E1}