您的位置:首页 > 其它

二分图定理

2015-09-04 08:43 351 查看

二分图相关定理证明

标签(空格分隔): 图论

二分图最大匹配=二分图最小点覆盖

构造:假设二分图分左部(XX),右部(YY),那么我们从YY的未盖点出发,按照增光路(依次是未匹配边->匹配边->未匹配边->….->匹配边)出发,将这些路径经过的点全部标记,我们将XX的标记点++YY的未标记点记作点集SS,那么SS便是最小点覆盖的一个解。

证明

首先|S|=|S|=最大匹配,因为SS在XX部分全是已盖点,而且这些已盖点都有一个性质,那就是与YY的未盖点之间有连边,然后SS在YY部分也全是已盖点,而且这些已盖点对应的XX部的已盖点都有一个性质,那就是与YY的已盖点之间有连边。所以|S|=|S|=最大匹配。

然后证明SS覆盖了二分图的所有边。分已盖点与已盖点之间的边、已盖点与未盖点之间的边、未盖点与未盖点之间的边(不存在)讨论

SS是最小的,因为单单是覆盖所有的最大匹配边也要这么多个点覆盖

有向无环图最小不相交路径覆盖

定义:用最少的不相交路径覆盖所有顶点。

定理:把原图中的每个点VV拆成VxV_x和VyV_y,如果有一条有向边AA−>BB,那么就加边(Ax,By)(Ax,By)。这样就得到了一个二分图,最小路径覆盖=原图的节点数-新图最大匹配。

证明:一开始每个点都独立的为一条路径,总共有nn条不相交路径。我们每次在二分图里加一条边就相当于把两条路径合成了一条路径,因为路径之间不能有公共点,所以加的边之间也不能有公共点,这就是匹配的定义。所以有:最小路径覆盖=原图的节点数-新图最大匹配。

有向无环图最小可相交路径覆盖

定义:用最小的可相交路径覆盖所有顶点。

算法:先用
floyd
求出原图的传递闭包,即如果aa到bb有路,那么就加边(a,b)(a,b)。然后就转化成了最小不相交路径覆盖问题。

偏序集的最大反链

定义:在偏序集X中。链是指一个集合SS,SS中的元素互相都有偏序关系。而反链则是指元素相互之间都没有关系的集合。偏序集中的最大反链,其实也就是偏序集中的最大独立集(只要能够到达都算相连)。

定理:DilworthDilworth定理,对于任何偏序集,都有最大反链=最小链的划分,最大链=最小反链的划分。

通过DilworthDilworth定理,我们可以把偏序集中的最大反链问题转化为最小可相交路径覆盖问题。

无向图的最大独立数:

从V个顶点中选出k个顶,使得这k个顶互不相邻。那么最大的k就是这个图的最大独立数

无向图的最大团:

从VV个顶点选出kk个顶点,使得这kk个顶构成一个完全图,即该子图任意两个顶都有直接的边

最小路径覆盖(原图不一定是二分图,但必须是有向无环图,拆点构造二分图):

在图中找一些路径,使之覆盖了图中的所有顶点,且任何一个顶点有且只有一条路径与之关联

最小路径覆盖 = |V||V| −- 最大匹配数

最小边覆盖(原图是二分图):

在图中找一些边,使之覆盖了图中所有顶点,且任何一个顶点有且只有一条边与之关联。

最小边覆盖 = 最大独立集 = |V||V| - 最大匹配数

最小顶点覆盖:

用最少的点(左右两边集合的点)让每条边都至少和其中一个点关联

一些转换

最大团 = 补图的最大独立集

最小边覆盖 = 二分图最大独立集 = |V||V| - 最小路径覆盖 最大匹配

最小路径覆盖 = |V||V| - 最大匹配数

最小顶点覆盖 = 最大匹配数

最小顶点覆盖 + 最大独立数 = |V||V|

最小割 = 最小点权覆盖集 = 点权和 - 最大点权独立集 = 最大流
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: