二分图与二分图匹配概念

来源:互联网 发布:曾康霖 知乎 编辑:程序博客网 时间:2024/06/07 02:08

一、二分图

二分图(Bipartite Graph)又称作二部图,是图论中的一种特殊模型。 设G=(V,E)是一个无向图,如果顶点V可分割为两个互不相交的子集(A,B),并且图中的每条边(i,j)所关联的两个顶点i和j分别属于这两个不同的顶点集(i in A,j in B),则称图G为一个二分图。如下图:



二、二分图匹配

匹配:给定一个二分图G,在G的一个子图M中,M的边集中的任意两条边都不依附于同一个顶点,则称M是一个匹配。


最大匹配:图中包含边数最多的匹配称为图的最大匹配,无法再通过增加未完成匹配的边的方式来增加匹配的边数。


完全匹配:如果一个子集的所有点都在匹配边上,则称这个最大匹配是完全匹配。特别地,若两个子集所有点恰好匹配(V1=V2),则称为完美匹配


未盖点:设Vi是G的一个顶点,如果Vi不与任意一条属于匹配M的边相关联,就称Vi是一个未盖点。 


交错轨:设P是图G的一条轨,如果P的任意两条相邻的边一定是一条属于M而另一条不属于M,就称P是交错轨。


可增广轨(增广路):两个端点都是未盖点的交错轨称为可增广轨。  可增广轨的性质:

 1.P的路径长度必定为奇数,第一条边和最后一条边都不属于M。

 2.P经过取反操作可以得到一个更大的匹配M'。

 3.M为G的最大匹配当且仅当不存在相对于M的增广路径。

 4.最大匹配数M+最大独立数N=总的结点数。






一般的图记为G=(V,E),V是顶点集合,E是边(也可称为线)的集合。在哥尼斯堡七桥问题中已领略过这种抽象。现在的二分图是一类特殊的图,只不过顶点集V划分为两部分,而这只能“跨越”于V1中某个点和V2中另一个点.二分图的匹配问题,就是找一个边的集合,这些边之间都没有公共的端点。
关于二分图的匹配,要研究的是“最大匹配”,即找一个边最多的匹配。求解二分图最大匹配常用的算法有匈牙利算法和最大流算法,进一步优化的有HK算法。




原创粉丝点击