Vertex Degrees顶点度数
Definition of Vertex Degree顶点度数的定义
In a (multi)graph G, the degree of a vertex v, denoted deg(v), is the number of edges incident with v.在一个(多重)图 G 中,任何顶点 v 的度数 (Degree),记作 deg(v),是指它与 G 中多少条边关联 (incident with) 的次数。
- For simple graphs:对于普通图: deg(v) equals the number of incident edges. Each edge contributes 1.顶点的度数 deg(v) 就是与它关联的边的数量。每条边贡献1度。
- For multigraphs:对于多重图: count incident edges, but loops count twice.顶点的度数是与它关联的边的数量,但环 (loops) 必须被计算两次。
Why loops count twice环算两次的原因
A loop attached to v can be seen as both entering and leaving v, consuming two connection slots and thus contributing 2 to deg(v).想象一个环连接顶点 v。当你沿着这条环边走时,你从 v 出发,经过环又回到了 v。这条边在概念上“占用”了 v 的两个连接“槽位”,因为它既是“进入”也是“离开” v 的通道。
Special Degree Vertices特殊度数的顶点
- Isolated Vertex:孤立顶点: degree 0度数为 0 的顶点
- Pendant Vertex:悬挂顶点: degree 1度数为 1 的顶点
Degrees in Special Graphs特殊图的顶点度数
- Path graph Pn:路径图 Pn: endpoints have degree 1; internal vertices degree 2两个端点度数为 1,中间顶点度数为 2
- Cycle graph Cn:环图 Cn: all vertices degree 2所有顶点的度数都是 2
- Complete graph Kn:完全图 Kn: all vertices degree n−1所有顶点的度数都是 n-1
- Complete bipartite graph Km,n:完全二分图 Km,n: each vertex in V1 has degree n; in V2 degree mV1 中的 m 个顶点度数都是 n,V2 中的 n 个顶点度数都是 m
- 立方图 Qn:所有顶点的度数都是 n
路径图 P₄
环图 C₄
完全图 K₄
完全二分图 K₂,₃
正则图 (Regular Graphs)
一个正则(多重)图是指其所有顶点的度数都相同的(多重)图。
正则图示例
- 环图 Cn:是2-正则图
- 完全图 Kn:是 (n-1)-正则图
- 完全二分图 Kn,n:是 n-正则图(当两个划分的大小相等时)
- 立方图 Qn:是 n-正则图
握手定理 (Handshaking Lemma)
握手定理
对于任何(多重)图 G,图中所有顶点的度数之和等于图中边数的两倍。
∑v∈V(G) deg(v) = 2|E(G)|
证明原理
每条边都有两个端点。当计算所有顶点的度数之和时,每条边都会在它的两个端点处各被计算一次。因此,每条边都会对总度数贡献2。所以,所有顶点度数之和自然就是边数的两倍。
握手定理可视化演示
用一个简单的图来理解握手定理:
握手定理演示:每条边被计算两次
计算验证:
顶点度数之和:
deg(A) + deg(B) + deg(C) + deg(D)
= 3 + 2 + 3 + 2 = 10
边数的两倍:
边数 |E| = 5
2|E| = 2 × 5 = 10
✓ 握手定理得到验证:∑deg(v) = 2|E|
应用示例:计算立方图的边数
计算 Qn (立方图) 的边数:
- Qn 有 2n 个顶点
- Qn 是 n-正则图,即所有顶点的度数都是 n
- 根据握手定理:∑v∈V(Qn)deg(v) = 2|E(Qn)|
- 所以,2n × n = 2|E(Qn)|
- 因此,|E(Qn)| = n · 2n-1
立方图 Q₃ 示例:
验证:Q₃ 有 8 个顶点,每个顶点度数为 3
边数 = 3 × 8 ÷ 2 = 12 条边
度数序列 (Degree Sequences)
度数序列的定义
一个(多重)图的顶点度数序列是该图中所有顶点的度数按一定顺序(通常是递增或递减)排列的序列。
判定性事实
度数序列必须满足一些基本条件才能对应一个实际存在的图或多重图:
事实1:
任何多重图的度数序列之和都是偶数。
(握手定理的直接推论)
事实2:
任何多重图都拥有偶数个奇度顶点。
(因为奇数个奇数相加不能得到偶数)
事实3:
不是每个度数之和为偶数的度数序列都有对应的简单图。
(度数之和为偶数是必要条件,但不是充分条件)
事实4:
每个度数之和为偶数的度数序列都有对应的多重图。
(可以通过添加环来构造)
应用示例
示例1:度数序列 (3,3,2,2,2,1)
序列之和 = 3+3+2+2+2+1 = 13(奇数)
结论:不存在
示例2:度数序列 (4,3,3,3,3)
序列之和 = 16(偶数),奇度顶点:4个(偶数)
结论:存在多重图
图同构 (Graph Isomorphism)
同构的定义
两个图 G 和 H 是同构 (Isomorphic) 的,记作 G ≃ H,当且仅当存在一个从 G 的顶点集到 H 的顶点集的双射函数 f: V(G) → V(H),使得顶点之间的邻接关系被保留。
也就是说,对于 V(G) 中的所有顶点 v, w:
{v,w} ∈ E(G) 当且仅当 {f(v),f(w)} ∈ E(H)
同构图的证明
要证明两个图是同构的,我们必须提供一个具体的图同构函数 f 并验证它满足定义中的条件。
证明步骤
- 检查度数序列:同构图必须有相同的度数序列
- 构造映射:尝试建立顶点之间的一一对应关系
- 验证邻接性:确保边的对应关系正确
- 确认双射:映射必须是一一对应的
具体示例:证明两个图同构
图 G₁
边集 E(G₁):
{ab, bc, cd, da, ac}
度数序列: (3,2,3,2)
图 G₂
边集 E(G₂):
{wx, xy, yz, zw, wy}
度数序列: (3,2,3,2)
同构映射证明:
步骤1:检查度数序列
G₁: (3,2,3,2) ✓
G₂: (3,2,3,2) ✓
度数序列相同
步骤2:构造映射 f
f(a) = w, f(b) = x
f(c) = y, f(d) = z
步骤3:验证邻接关系
ab ∈ E(G₁) ⟺ f(a)f(b) = wx ∈ E(G₂) ✓
bc ∈ E(G₁) ⟺ f(b)f(c) = xy ∈ E(G₂) ✓
cd ∈ E(G₁) ⟺ f(c)f(d) = yz ∈ E(G₂) ✓
da ∈ E(G₁) ⟺ f(d)f(a) = zw ∈ E(G₂) ✓
ac ∈ E(G₁) ⟺ f(a)f(c) = wy ∈ E(G₂) ✓
✓ 结论:G₁ ≃ G₂ (两图同构)
非同构图的证明
要证明两个图不是同构的,我们只需找到一个图具有而另一个图不具有的图不变量属性即可。
- 不同的度数序列
- 不同的边数或顶点数
- 一个包含特定长度的环而另一个不包含
- 不同的连通性质
图不变量 (Graph Invariants)
图不变量的定义
图不变量是指图 G 的任何性质,该性质对于任何与 G 同构的图也成立。
核心思想:如果两个图在任何一个图不变量上不同,那么它们就肯定不是同构的。
常见图不变量
基本不变量
- 顶点数和边数
- 度数序列
- 正则性
- 特定度数的顶点数量
高级不变量
- 相邻顶点的度数
- 子图的性质
- 二分性
- 连通性
路径相关
- 特定长度的路径数量
- 特定长度的环数量
- 欧拉路径的存在性
- 哈密顿路径的存在性
几何性质
- 平面性
- 色数
- 团数
- 独立数
路径 (Walks)
路径的定义
在任何(多重)图 G 中,一个长度为 n 的路径 (Walk)是顶点 vj ∈ V(G) 和边 ei ∈ E(G) 的交替序列:
v0, e1, v1, e2, v2, ..., vn-1, en, vn
序列中每对连续项都必须是关联的。路径的长度 n 等于它所包含的边的数量。
闭合路径 (Closed Walks)
一个在(多重)图 G 中的路径是闭合的,如果它从同一个顶点开始和结束(即 v0 = vn)。
路径表示法
在普通图 G 中,由于没有平行边,可以用顶点序列的简写形式 v0v1v2...vn-1vn 来表示路径。
路径 W = v0v1...vn 的逆向路径为 W-1 = vnvn-1...v0。
路径示例
图:一个四边形 abcd,带有一条对角线 ac。
有效路径
- abcda:有效闭合路径
- abcdcda:有效路径(允许重复)
- abcd:有效非闭合路径
- abcadc:有效路径(允许重复顶点)
无效路径
- abcdba:无效(d 和 b 不相邻)
连通图 (Connected Graphs)
连通图的定义
一个(多重)图 G 是连通的,当且仅当对于 G 中的任何一对顶点 vi, vj ∈ V(G),都存在一条从 vi 到 vj 的路径。
连通分量 (Connected Components)
任何(多重)图 G 的最大连通子图被称为它的连通分量。
连通性作为等价关系
定理:对于所有(多重)图 G,在 V(G) 上定义的关系 vi ~ vj 当且仅当存在一条从 vi 到 vj 的路径,这是一个等价关系。其等价类就是 G 的连通分量。
证明要点
需要验证:
- 自反性:每个顶点到自己存在长度为0的路径
- 对称性:如果存在从v到w的路径,则存在从w到v的路径
- 传递性:如果存在v到w和w到u的路径,则存在v到u的路径
邻接矩阵 (Adjacency Matrices)
邻接矩阵的定义
对于任何有限的(多重)图 G 和其顶点的一个特定顺序 v1, v2, ..., vn,它的邻接矩阵是一个 n×n 的矩阵 A。
其中每个 (i,j) 条目 ai,j 是 G 中连接顶点 vi 和 vj 的边的数量。
邻接矩阵的性质
- 对于普通图:条目只能是 0 或 1;主对角线上的条目必须是 0
- 对称性:对于任何无向(多重)图,其邻接矩阵必须是对称的 (ai,j = aj,i)
- 有向图:邻接矩阵可能不对称
邻接矩阵示例
图:顶点 v1, v2, v3, v4。v1 有环,v1-v3, v1-v4 有边,v3, v4 之间有两条平行边,v2 孤立。
多重图 G
邻接矩阵 A
| v₁ | v₂ | v₃ | v₄ | |
|---|---|---|---|---|
| v₁ | 1 | 0 | 1 | 1 |
| v₂ | 0 | 0 | 0 | 0 |
| v₃ | 1 | 0 | 0 | 2 |
| v₄ | 1 | 0 | 2 | 0 |
对角线元素:环的数量
非零元素:边的数量
对称性:ai,j = aj,i
计数路径 (Counting Walks)
路径计数定理
给定一个(多重)图 G,其顶点顺序为 v1, v2, ..., vn,邻接矩阵为 A = (ai,j)。那么从 vi 到 vj 的长度为 m 的路径数量是矩阵 Am 的 (i,j) 条目。
定理的含义
- A¹ = A:直接相邻的路径(长度为1)
- A²:长度为2的路径数量
- A³:长度为3的路径数量
- A^m:长度为m的路径数量
计数路径示例
问题:在给定图中,有多少条长度为 3 的路径从 a 到 a,以及从 a 到 b?
图:顶点 a, b, c, d,边为 ab, bc, cd, da, ac。
图 G
邻接矩阵 A
| a | b | c | d | |
|---|---|---|---|---|
| a | 0 | 1 | 1 | 1 |
| b | 1 | 0 | 1 | 0 |
| c | 1 | 1 | 0 | 1 |
| d | 1 | 0 | 1 | 0 |
矩阵计算过程
步骤1: 计算 A²
长度为2的路径数量
| A² | a | b | c | d |
|---|---|---|---|---|
| a | 3 | 1 | 2 | 1 |
| b | 1 | 2 | 1 | 2 |
| c | 2 | 1 | 3 | 1 |
| d | 1 | 2 | 1 | 2 |
步骤2: 计算 A³
长度为3的路径数量
| A³ | a | b | c | d |
|---|---|---|---|---|
| a | 2 | 7 | 3 | 6 |
| b | 7 | 2 | 6 | 3 |
| c | 3 | 6 | 2 | 7 |
| d | 6 | 3 | 7 | 2 |
步骤3: 答案
从 a 到 a 长度为3的路径:
A³[a,a] = 2 条
从 a 到 b 长度为3的路径:
A³[a,b] = 7 条
例如a→a的路径:
• a→b→c→a
• a→d→c→a
解答步骤总结
- 写出邻接矩阵 A(假设顶点顺序为 a, b, c, d)
- 计算 A³(矩阵的三次方)
- A³ 的 (a,a) 位置的元素是从 a 到 a 长度为3的路径数量
- A³ 的 (a,b) 位置的元素是从 a 到 b 长度为3的路径数量
小径、环路、路径、圈
更具限制性的路径概念
这些是比"路径 (Walk)"更具限制性的概念:
非闭合
- 小径 (Trail):任何非闭合的路径,且其中没有重复的边
- 路径 (Path):任何小径,且其中没有重复的顶点
闭合
- 环路 (Tour):任何闭合的路径,且其中没有重复的边
- 圈 (Cycle):任何环路,且其中没有重复的顶点(除了起点和终点)
路径/圈的示例
图:顶点 a, b, c, d, e。这是一个轮图 W4。
路径 (Path)
路径 (Walk)
(重复顶点和边)
圈 (Cycle)
环路 (Tour)
(重复顶点,不重复边)
路径 (Walk)
(重复边 eb)
从路径到路径的定理
定理:在一个(多重)图 G 中,如果存在从顶点 v0 到 vn 的非闭合路径,那么存在一条从 v0 到 vn 的路径(不重复顶点和边)。
推论
在一个具有 n 个顶点的(多重)图 G 中,如果存在从顶点 vi 到 vj 的非闭合路径,那么存在一条从 vi 到 vj 的长度至多为 n-1 的路径。
二分图中的环
二分图与奇数环
定理:一个(多重)图 G 不是二分图当且仅当它包含一个奇数长度的环。
等价表述:一个(多重)图 G 是二分图当且仅当 G 中的每个环都具有偶数长度。
证明原理
基于"两染色法"。奇数长度的环会阻止成功的两染色,而没有奇数长度的环则保证了图可以被两染色。
应用示例
二分图
- 树(没有环)
- 偶数长度的圈
- 完全二分图 Km,n
- 只有偶数长度环的图
非二分图
- 奇数长度的圈(如三角形)
- 完全图 Kn(n ≥ 3)
- 包含奇数长度环的任何图
欧拉路径 (Euler Walks)
欧拉路径的定义
在一个连通的(多重)图 G 中:
- 一个欧拉小径 (Euler Trail)是一个小径,它恰好访问 G 的每条边一次
- 一个欧拉环路 (Euler Tour)是一个环路,它恰好访问 G 的每条边一次
历史背景
欧拉路径和欧拉回路起源于著名的哥尼斯堡七桥问题,这是图论发展的起点。
欧拉路径存在性的判别条件
欧拉环路的存在性
一个连通的(多重)图 G 包含一个欧拉环路,当且仅当它的每个顶点都具有偶数度数。
形象理解:一笔画回原点,每个顶点"进"和"出"的边数必须平衡。
欧拉小径的存在性
一个连通的(多重)图 G 包含一个欧拉小径,当且仅当它恰好只有两个顶点具有奇数度数。
形象理解:一笔画不回原点,起点和终点是那两个不平衡的奇度顶点。
欧拉路径可视化示例
经典案例:哥尼斯堡七桥问题
哥尼斯堡城市地图
抽象图模型
欧拉的结论:有4个奇度顶点(A, B, C, D),违反了欧拉小径的条件(最多2个奇度顶点)。
因此,不可能一次性不重复地走过所有7座桥。
案例1:有欧拉环路
度数:全部为偶数
奇度顶点:0个
✓ 有欧拉环路
路径:A→B→E→A→D→C→B(一笔画回原点)
案例2:有欧拉小径
度数:A,D为奇数,其余偶数
奇度顶点:2个(A,D)
✓ 有欧拉小径
路径:A→B→E→C→D(从A到D的一笔画)
案例3:无欧拉路径
度数:A为偶数,B,C,D,E为奇数
奇度顶点:4个(B,C,D,E)
✗ 无欧拉路径
奇度顶点超过2个,无法一笔画
哈密顿路径 (Hamilton Walks)
哈密顿路径的定义
在一个连通的(多重)图 G 中:
- 一个哈密顿路径 (Hamilton Path)是一个路径,它恰好访问 G 的每个顶点一次
- 一个哈密顿圈 (Hamilton Cycle)是一个圈,它恰好访问 G 的每个顶点一次(除了起点和终点是同一个顶点)
哈密顿路径 vs 欧拉路径
欧拉路径
- 访问每条边恰好一次
- 可以重复访问顶点
- 有明确的判别条件
- 多项式时间可解
哈密顿路径
- 访问每个顶点恰好一次
- 可能不使用所有边
- 没有简单的判别条件
- NP-完全问题
哈密顿路径存在性的条件
重要:目前没有已知的必要和充分条件来判断一个图是否包含哈密顿路径或哈密顿圈。这使得哈密顿问题成为图论中一个著名的NP完全问题。
必要条件(事实)
- 事实1:如果图中任何顶点的度数为1,那么它没有哈密顿圈
- 事实2:如果顶点度数为2,那么其两条边都必须在哈密顿圈中
- 事实3:哈密顿圈必须恰好使用每个顶点的2条边
充分条件(定理)
- Dirac定理:如果n≥3且每个顶点度数≥n/2,则有哈密顿圈
- Ore定理:如果n≥3且任意不相邻顶点度数之和≥n,则有哈密顿圈
哈密顿路径示例
图 G₁(完全图 K₅)
所有顶点都相连
结论:有哈密顿路径和圈
图 G₂(风扇图)
可以遍历所有顶点
结论:有哈密顿路径,无哈密顿圈
图 G₃(星图)
6个度数为1的顶点
路径最多只能有2个端点
结论:无哈密顿路径
星图分析
星图有6个度数为1的顶点(悬挂顶点)。根据事实1,如果存在哈密顿路径,它必须从这些度数为1的顶点开始或结束。但这里有6个度数为1的顶点,而哈密顿路径最多只能有两个端点。这是不可能的。
总结
本章深入探讨了图论的高级概念,包括:
5.02: 顶点度数与同构
- 顶点度数的定义和性质
- 握手定理及其应用
- 度数序列的判定条件
- 图同构的定义和证明方法
- 图不变量的概念和应用
5.03: 路径与遍历
- 路径、小径、环路、圈的区别
- 连通图和连通分量
- 邻接矩阵和路径计数
- 欧拉路径的判定条件
- 哈密顿路径问题的复杂性
这些概念为理解图的结构特性、算法设计和复杂性分析奠定了重要基础。