感性理解二分图中最小顶点覆盖、最大独立集、最小边覆盖与最大匹配的关系

先说概念:

1、最小顶点覆盖:用最少的点覆盖所有的边(只要边的一个端点被选取,即算“被覆盖”);

2、最大独立集:不直接相连的点的最大个数;

(注意:最大独立集是一个点集,其中的点两两不直接相连(独立集)、且在所有独立集中点数最多,但是我们一般只求其元素个数(即点数))

3、最小边覆盖:用最少的边覆盖所有的点。

由于二分图不存在孤立点(即无边相连的点),上述问题必定有解。


举个例子

感性理解二分图中最小顶点覆盖、最大独立集、最小边覆盖与最大匹配的关系_第1张图片

对于上面这个二分图,

最小顶点覆盖是3,把左边三个点取完是一种可行解。有什么规律呢?设想一下,一条边要被覆盖,那么它两个端点至少有一个被取;所有边要被覆盖,即最小点覆盖,要保证每条边都至少被取了其中一个端点。这和二分图最大匹配是不是相似?如果当前存在一个匹配,剩下的未匹配点中有两点直接相连(即该边两端点都未取),那么它一定不是最大匹配;反之,若为最大匹配,其必定不存在未被覆盖的边。故最小点覆盖==最大匹配数,这即是Konig定理。

最小边覆盖是4,取1-3、2-1、2-4、3-2是一种可行解。要探究它与最大匹配的关系,我们还是先看一看它的一些性质。首先,在最优的情况下,一条边可以覆盖两个点,且选取这条边前,这两个点是不相匹配的;那么根据贪心的原则,我们可以先取一次最大匹配,这时选取出来的每条边都匹配(覆盖)了两个点。剩下的点怎么办呢?这时每条边只能覆盖一个点了。换言之,如果原本总共有n+m个点,最大匹配数是k(即覆盖前2*k个点得最小边数为k),那么剩余的点的个数为n+m-2*k,即需要用n+m-2*k条边去覆盖,因此总共需要n+m-2*k+k==n+m-k条边去覆盖,即最小边覆盖==顶点数-最大匹配。

(另外,正如前文所说,因为二分图没有孤立点,必定存在最小边覆盖;因为最终未匹配的点必定存在与之相连并未使用的边)

最大独立集也是4,取右边整个集合是一种可行解。根据定义:最大独立集中的点相互之间无边相连,故它们不存在匹配关系。那么可以简单地理解成:把最大匹配中的点以及与它们相连的边中砍掉,剩下的就是孤立点了。因此,最大独立集==总点数-最大匹配==最小边覆盖。

你可能感兴趣的:(二分图)