最大流模型为有N个湖(点),他们有小溪相连(边),每个小溪都有它们单位时间的最大流量,最大流求的是一个湖(源点)到另一个湖(汇点)单位时间内能流入的最大流量。
求最大流的一个算法为 ford_fulkerson算法,算法思想:
1.从源点开始寻找一条路径到汇点,记录这条路径流量最小的边的流量为m,然后最大流量+=m,然后每条边的流量都减去m,然后反向更新流量(每条边反方向的流量加上m);
2.重复步骤1直到找不到路径到汇点为止,最终的最大流量即为所求的最大流。
ford_fulkerson C++模板: