前言:
攀登计划项目是关于图论的分析,因此需要补一些图论方面的基础。
为什么增广路算法只适用于二部图
一、直观上:
- 二部图:可以基于左右两侧为边定向
- 一般图:没有两侧的概念,不好定向
二、本质上
- 二部图中,每个左侧顶点在每一轮搜索只需搜索一次(作为起点,或当前匹配中一条边的终点)
- 一般图中,可能有奇圈,每一次到达其中的额“左侧”顶点可能是错误地作为不在当前匹配中的一条边的终点,即错误地将其当作“右侧”顶点了
面向二部图的Hopcroft-Karp算法
基本思路:
对匈牙利算法的改进优化的上述算法
新算法代码
http://blog.chinaunix.net/uid-23709303-id-2388862.html