图匹配
匹配 或是 独立边集 是一张图中没有公共边的集合。 在二分图中求匹配等价于网路流问题。
图匹配算法是信息学竞赛中常用的算法,总体分为最大匹配以及最大权匹配,先从二分图开始介绍,在进一步提出一般图的作法。
图的匹配
在图论中,假设图
一组两两没有公共点的边集
定义匹配的大小为其中边的数量
当图中的边带权的时候,边权和最大的为 最大权匹配。
匹配中的边称为 匹配边,反之称为 未匹配边。
一个点如果属于
-
maximal matching: 无法再增加匹配边的匹配。不见得是最大匹配。
-
最大匹配(maximum matching): 匹配数最多的匹配。
-
完美匹配(perfect matching): 所有点都属于匹配,同时也符合最大匹配。
-
近完美匹配(near-perfect matching): 发生在图的点数为奇数,刚好只有一个点不在匹配中,扣掉此点以后的图称为 factor-critical graph。
maximal matching 最大匹配
二分图匹配
一张二分图上的匹配称作二分匹配
设
完美匹配
设
霍尔定理
设二分图
最大匹配
寻找二分图边数最大的匹配称为最大匹配问题。
算法
组合优化中的一个基本问题是求 最大匹配(maximum matching)。
二分图最大匹配
详见 二分图最大匹配 页面。
在无权二分图中,Hopcroft-Karp 算法可在
二分图最大权匹配
详见 二分图最大权匹配 页面。
在带权二分图中,可用 Hungarian 算法解决。
如果在最短路搜寻中用 Bellman–Ford 算法,时间复杂度为
一般图最大匹配
详见 一般图最大匹配 页面。
无权一般图中,Edmonds' blossom 算法可在
一般图最大权匹配
详见 一般图最大权匹配 页面。
带权一般图中,Edmonds' blossom 算法可在
参考资料
- [1]Wikiwand - Matching (graph theory)
- [2]Wikiwand - Blossom algorithm
- [3]2015 年《浅谈图的匹配算法及其应用》- 陈胤伯
- [4]演算法笔记 - Matching
- [5]the-tourist/algo
- [6]Bill Yang's Blog - 带花树学习笔记
- [7]二分图的最大匹配、完美匹配和匈牙利算法
- [8]Wikiwand - Hopcroft–Karp algorithm
本页面最近更新:2/3/2023, 12:00:00 AM,更新历史
发现错误?想一起完善? 在 GitHub 上编辑此页!
本页面的全部内容在 CC BY-SA 4.0 和 SATA 协议之条款下提供,附加条款亦可能应用