二部图
概述
二部图(Bipartite Graph)是一种特殊的图,其顶点集可划分为两个互不相交的子集,使得每条边的两个端点分别属于不同的子集。
定义
形式化定义
图 称为二部图,当且仅当存在 的一个划分 (),使得对每条边 ,都有 且 (或反之)。
二部图通常记为 ,其中 和 分别称为左部和右部。
等价刻画
二部图有多种等价定义,以下条件互相等价:
- 划分定义: 可划分为两个独立集 和
- 染色定义: 的色数(chromatic number),即可以用两种颜色对顶点染色,使相邻顶点颜色不同
- 奇环刻画: 不包含奇数长度的环(即不存在长度为奇数的回路)
- 邻接矩阵刻画:适当排列顶点后,邻接矩阵可以写成 的分块形式
判定方法
- BFS/DFS 染色法:从任意顶点出发,交替用两种颜色标记,若发现冲突(相邻顶点同色)则不是二部图。时间复杂度
核心性质
- König 定理:在二部图中,最大匹配的边数 = 最小顶点覆盖的顶点数。这是二部图最重要的定理之一,将匹配问题与覆盖问题联系起来
- Hall 定理(Hall’s Marriage Theorem):二部图 存在完美匹配( 条边,覆盖 中所有顶点),当且仅当对 的每个子集 ,都有 ,其中 是 的邻居集
- 完全二部图 有 条边
应用场景
- 二分匹配:二分匹配问题天然定义在二部图上,可通过添加超级源点和超级汇点转化为最大流问题
- 任务分配:将工人与任务分别放在 和 ,边表示能力匹配
- 顶点覆盖的 2-近似算法:利用 König 定理,在二部图中通过最大匹配构造最小顶点覆盖,得到精确解;一般图中顶点覆盖是 NP 难的,但最大匹配给出 2-近似
- 课程安排:将课程与时间槽分别建模为二部图的两个部