最小费用最大流——SPFA

模板题

首先什么是最大流
这里不详细赘述,需要的点这里

最小费用最大流概念
费用流中,网络上的每一条边都会比普通网络流中的边多一个属性——单位费用(这里边i的费用记为co[i])。也就是说,一旦流经边i的流量增加k,那么这条边的费用就会增加co[i]*k。开始时每条边的费用为0。
在一个网络中,一个流的总费用定义为其流经的每条边的费用之和。
根据我的理解,最小费用最大流(以下简称“最最”)其实是“最大流最小费用”。也就是说,最最问题要求你在网络中找一个流,这个流有以下要求:
①这个流是最大流,也就是说再也找不到一条增广路
②这个流是所有最大流中所需总花费最小的

最最问题的求解
最最问题有两种不同的思路:
I 先找出这个网络的最大流,然后再在这个网络上进行调整,使得流量保持不变,总费用减少,知道调整不过来为止。

II 每次在残余网络上找一条增广路,使得这条路上每个边的单位费用的和尽量小。然后不停地找这样的最短路,直到从源点到汇点走不通为止,这样增广出来的流便是最小费用最大流。

SPFA求解最大流的详细过程
SPFA求解最最问题采用第二种思路,具体步骤如下:

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值