网络流基本概念
容量
在有向图G=(V,E)中,对于每条边(u,v),都给定它的容量,记为C(u,v)
流量
对于每条边(u,v),都会赋予一个流量,记为f(u,v),满足0≤f(u,v)≤C(u,v)
可行流
给每条边赋予一个流量后满足:
- 容量限制:0≤f(u,v)≤C(u,v)
- 流量守恒:∀u∈V,∑(u,v)f(u,v)=∑(v,u)f(v,u)(源点s,汇点t除外)
对于一个可行流f,|f|表示f的流量
|f|=∑(s,v)f(s,v)−∑(u,s)f(u,s)=∑(u,t)f(u,t)−∑(t,v)f(t,v)
最大流
流量最大的可行流
残留网络
对于每一个可行流f,都对应了一个残留网络G
对于可行流上的每一条边f(u,v)
- 剩余流量:G′(u,v)=C(u,v)−f(u,v)
- 退还流量:G′(v,u)=−f(u,v)
任何一个可行流f+f对应残留网络G′上的可行流f′=G上的另一个可行流
增广路径
在残余网络上从S出发,沿大于0的边走到终点的路径被称为增广路径
最大流不存在增广路经
割
把G的点集V分为不重不漏的两部分S,T,其中s∈S,t∈T
割的容量C(S,T)=∑u∈S∑v∈TC(u,v)
割的流量f(S,T)=∑u∈S∑v∈Tf(u,v)−∑v∈T∑u∈Sf(v,u)