当前位置:
首页 >
【模板】EK求最大流、dinic求最大流
发布时间:2023/12/3
49
豆豆
生活随笔
收集整理的这篇文章主要介绍了
【模板】EK求最大流、dinic求最大流
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
ACM模板
目录
- 概念
- EK算法
- Dinic算法
概念
yxc老师的部分总结
1.1 流网络,不考虑反向边
1.2 可行流,不考虑反向边
1.2.1 两个条件:容量限制、流量守恒
1.2.2 可行流的流量指从源点流出的流量 - 流入源点的流量
1.2.3 最大流是指最大可行流
1.3 残留网络,考虑反向边,残留网络的可行流f’ + 原图的可行流f = 原题的另一个可行流
1.4 增广路径
1.5 割
1.5.1 割的定义
1.5.2 割的容量,不考虑反向边,“最小割”是指容量最小的割。
1.5.3 割的流量,考虑反向边,f(S, T) <= c(S, T)
1.5.4 对于任意可行流f,任意割[S, T],|f| = f(S, T)
1.5.5 对于任意可行流f,任意割[S, T],|f| <= c(S, T)
1.5.6 最大流最小割定理
(1) 流f是最大流
(2) 流f的残留网络中不存在增广路
(3) 存在某个割[S, T],|f| = c(S, T)
1.6. 算法
1.6.1 EK O(nm^2)
1.6.2 Dinic O(n^2m)
1.7 应用
1.7.1 二分图
(1) 二分图匹配
(2) 二分图多重匹配
1.7.2 上下界网络流
(1) 无源汇上下界可行流
(2) 有源汇上下界最大流
(3) 有源汇上下界最小流
1.7.3 多源汇最大流
EK算法
链式前向星初始化-1版本 0正边 1反边
S源点 T汇点
d[]流量 pre[]前向边
存图存的是残留网络
时间复杂度:O(nm2)O(nm^2)O(nm2)
Dinic算法
模拟队列
时间复杂度:O(n2m)O(n^2m)O(n2m)
总结
以上是生活随笔为你收集整理的【模板】EK求最大流、dinic求最大流的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 冰糖葫芦的糖是怎么熬出来的
- 下一篇: 【模板】最大流之上下界可行流