二分图匹配
1.代码的实现过程
这个博客写的很有趣,也很易懂
http://blog.csdn.net/dark_scope/article/details/8880547
2.有一问题代码实现虽然懂了,但是有个很重要的部分没有理解,强调
就是增广路->即交错轨,这个思想在二分图的很多其他应用上很有用
3.二分图的大致用法
a.最小点覆盖数
定义:点覆盖集即一个点集,使得所有边至少有一个端点在集合里
具体的证明,就要用到上面的增广轨,采用反证
下面给出具体证明:
http://blog.csdn.net/niushuai666/article/details/7036897
b.最小路径覆盖
定义:找到最少的路径,使得这些路径覆盖所有的点
最小路径覆盖=顶点数 - 最大二分图匹配数
c.最大独立集
定义:集合中两点之间互不相连,求最大的集合
最大独立集 = 所有点的个数 - 最大二分图匹配数