图 Graph
本文主要内容为:图的定义以及基本术语
- 图的定义
- 图
图G的组成:由 数据元素的集合E 和 数据间的关系集合E 组成,记作:G = <V, E>
顶点 (vertex):数据元素,V就是顶点的有穷非空集合
边 (edge): 顶点的序偶对,例如 (v1, v2),E就是边的集合
-
- 子图
定义:设 G=<V, E> 是一个图,E' 是 E 的子集,V' 是 V 的子集,且 E' 中的边权 仅与 V' 中的顶点相关联,
则 G' = <V', E'> 称为 图G 的子图
特殊的子图:空图,只有一个顶点,图G本身
-
- 无向图
定义:代表一条边的顶点的序偶是无序的(即该边无方向)
表示:无序的序偶对用圆括号表示,例如 (v1, v2) 和 (v2, v1) 是代表同一条边
-
- 有向图
定义:代表一条边的顶点的序偶是有序的(即该边有方向)
表示:有序的序偶对用尖括号表示,例如 <v1, v2> 和 <v2, v1> 是代表不同的边
弧:有向图的边的别称
弧尾 / 始点:边的起点,例如 <v1, v2> 中的 v1
弧头 / 终点:边的终点,例如 <v1, v2> 中的 v2
-
- 带权图
定义:图的每条边边或弧都附带权(weight)
权的作用:可以用于表示从一个顶点到另一个顶点的距离,费用,代价等等
-
- 稀疏图:边比较少的图
- 稠密图:边比较多的图
- 完全图:任何两个顶点间都有边相关联的图
- 图的基本术语
- 无向图顶点 v 的度:与该顶点相关的边的数目,记作 D(v)
- 有向图顶点 v 的入度:以顶点 v 为终点的弧的数目,记作 ID(v)
- 有向图顶点 v 的出度:以顶点 v 为起点的弧的数目, 记作 OD(v)
- 终端顶点 / 叶子:出度为 0 的顶点
-
- 路径:从一个顶点到另一个顶点,中间允许经过其他顶点,有向图的路径也是有向的
- 路径长度:路径上的 边 或 弧 * 权重 之和
- 回路 / 环:路径的起点和终点是同一个顶点的路径
- 图的根:从该顶点有路径可以到达图的其他所有顶点
-
- 连通图:无向图的任意两个顶点有路径
- 强连通图:有向图的任意两个顶点之间有来回路径
- 连通分量:无向图中的极大连通子图
- 强连通分量:有向图强连通的极大子图
- 网络:带权的连通图
- 图的相关计算
n:表示图中顶点的数目
e:表示图中边的数目
-
- 无向图 e 的取值范围:[0,n(n - 1) / 2]
- 有向图 e 的取值范围:[0, n(n - 1)]
Be a good programmer, but not just a programmer