网络流--最大流

考虑一个场景,我们需要求从 源点\large S到 终点\large T 的最大流量。

 

几个概念:

容量:每条边最多可以通过的流量

流:  一条从源点到汇点的 一个合法解(路径)称为 一条流

源点: 起点

汇点: 终点

 

不成熟的方法:

从源点开始搜索,一直到汇点,可以搜索出来一条流,然后在源点不停搜索,直到无法找到一条流。

但是这样的结果,不一定是正确的。

 

考虑下面这幅图,我们随机选择了一条不正确的路,所以最终的答案是不正确的。

解决方法:

建立反向边,给我们的程序反悔的机会。 【可以这样来理解,这条边流量的方向是不确定的,所以可以退回反方向的流量,当然正反方向可以流量不相等】

 

一些极限的情况:

考虑上面这幅图,这样的话,我们的程序 最差的情况下需要 200000次搜索。

 

改进算法:EK算法,每次寻找最短路进行增广

 

还能优化么?

以后再写

 

参考博客:https://www.cnblogs.com/rmy020718/p/9546071.html

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值