最小割

来源:互联网 发布:网络摄像机排行榜 编辑:程序博客网 时间:2024/05/01 13:08

首先感谢这个博客讲的很明白
链接
割的定义
C[S,T]是将网络G分为s和t两部分点集 S属于s且T属于t 从S到T的边的全集
这里写图片描述
在这张图中,割即为s–>1这条边与3–>2这条边
在网络流中,最大流等于最小割(最小割为割去的边的容量)
首先任意一个流小于等于任意的一个割
打个比方源点相当于自来水厂而汇点相当于你的家,有人不想让你的家有水喝,那就必然要砍掉几根
tube让你的家里断水,也就是让自来水厂没有到你家的管子途径
现在有人砍断了一些管子,里面流出了一些水,这些水本来是要到你家里去的,现在流到了外面,网络里总的流量还是原来的流量,而由于容量的限制,每根管子里的水总是小于等于其容量,所以割一定要大于等于流量
当网络里已经到了最大流的时候,残存的流量网络中一定不存在令s到t的路了,否则还有增广路,这个流量就不是最大流了
现在我们设集合u是能到s的点集,集合v是不能到s的点集,现在创造出一个割C[u,v],u到v的边必然满流
否则就能继续增广这些满流边的流量和就是当前的流即最大流
把这些满流边作为割就构造出了一个和最大流相等的割
现在设相等的流与割分别为fm与cm
由于任意的一个流小于等于任意的割
所以有任意f<=fm=cm<=任意c
所以最小割即为最大流!

1 0