最大流问题的最短增广路径算法.ppt
最大流问题的最短增广路径算法34114212331s2453t这是初始网络和初始残留网络这是初始网络和初始残留网络.44114212331s2453t结点标号从此以后将是距离标号结点标号从此以后将是距离标号.054321t453s2d(j)是在是在G(f)中的中的j到到t的的最短的距离的的最短的距离02211154114212331s2453t弧弧(i,j)是是 可进入的可进入的,如果,如果 d(i)=d(j)+1.054321t453s2一条可进入弧的一条可进入弧的 s-t 路径是最短路径路径是最短路径.022111可进入弧将表示成粗线可进入弧将表示成粗线.6424241121331s2453t使用可进入弧从使用可进入弧从 s 开始进行深度优先搜索开始进行深度优先搜索.054321t453s2022111下一步下一步.发送流并更新残留容量发送流并更新残留容量.210724 2241121331s2453t这里是更新后的残留容量这里是更新后的残留容量.054321t453s2022111如果需要,将在以后更新距离标号如果需要,将在以后更新距离标号824 2241121331s2453t054321t453s2022111使用可进入弧从使用可进入弧从 s 开始进行深度优先搜索开始进行深度优先搜索.下一步下一步.发送流并更新残留容量发送流并更新残留容量.21092224 224111311s2453t054321t453s2022111这里是更新后的残留容量这里是更新后的残留容量.如果需要,将在以后更新距离标号如果需要,将在以后更新距离标号102224 224111311s2453t054321t453s2022111使用可进入弧从使用可进入弧从 s 开始进行深度优先搜索开始进行深度优先搜索.21如果没有从如果没有从i出发的可进入弧,那么出发的可进入弧,那么relabel(i)且沿着到且沿着到 i 的的路径回溯路径回溯.112224 224111311s2453t054321t45s2022111使用可进入弧从使用可进入弧从 s 开始进行深度优先搜索开始进行深度优先搜索.21如果没有从如果没有从i出发的可进入弧,那么出发的可进入弧,那么relabel(i)且反向沿着从且反向沿着从s出发的路径的一条弧出发的路径的一条弧.23122224 224111311s2453t054321ts2022111使用可进入弧从使用可进入弧从 s 开始进行深度优先搜索开始进行深度优先搜索.21如果没有从如果没有从i出发的可进入弧,那么出发的可进入弧,那么relabel(i)且反向沿着从且反向沿着从s出发的路径的一条弧出发的路径的一条弧.233s45132224 224111311s2453t054321t2022111继续从它离开的地方的路径继续从它离开的地方的路径21如果路径达到了如果路径达到了 t,那么发送流且更新剩余网络那么发送流且更新剩余网络.233s02145142224 223111211s2453t054321t202211121 233s45这是更新后的残留容量这是更新后的残留容量.11152224 223111211s2453t054321t202211121 233s45搜索搜索从从 s 开始的开始的最短最短 s-t 路径路径113231如果没有从如果没有从i出发的可进入弧,那么出发的可进入弧,那么relabel(i)且反向沿着从且反向沿着从s出发的路径的一条弧出发的路径的一条弧.162224 223111211s2453t054321t202211121 233s45搜索从搜索从 s 开始的最短开始的最短 s-t 路径路径113231如果没有从如果没有从i出发的可进入弧,那么出发的可进入弧,那么relabel(i)且反向沿着从且反向沿着从s出发的路径的一条弧出发的路径的一条弧.2532172224 223111211s2453t054321t02211121 23s45113231 23012235搜索从搜索从 s 开始的最短开始的最短 s-t 路径路径如果路径达到了如果路径达到了 t,那么发送流且更新剩余网络那么发送流且更新剩余网络.182334 12311121s2453t054321t02211121 23s45这是更新了的残留容量这是更新了的残留容量11321 23235192334 12311121s2453t054321t02211121 23s45搜索最短搜索最短 s-t 路径路径11321 232353 40123s1下一步下一步:更新残留容量更新残留容量20234221111s2453t054321t02211121 2345这是更新了的残留容量这是更新了的残留容量2221 232353 41s121234221111s2453t054321t02211121 2345更新距离标号和路径更新距离标号和路径2221 232353 41s1234如果如果 d(s)n-1,那么没有从那么没有从s到到 t的路径的路径4565222234221111s2453t054321t02211121 2345残留网络中找不到残留网络中找不到s-t 路径路径2221 232353 41s1456最小割是最小割是S=s,2,5.45652