算法设计与分析课件 49 ISAP算法.pptxVIP

  • 1
  • 0
  • 约1.87千字
  • 约 15页
  • 2026-06-10 发布于山东
  • 举报

算法设计与分析本节要点CONTENTSISAP算法

ISAP算法最短增广路算法(SAP),采用广度优先的方法在残余网络中找去权值的最短增广路。从源点到汇点,像声音传播一样,总是找到最短的路径。在寻找路径时却多搜索了很多结点。

ISAP算法有人想到了一条妙计—贴标签。首先对所有的结点标记到汇点的最短距离,我们称之为高度。标高从汇点开始,用广度优先的方式,汇点的邻接点高度1,继续访问的结点高度是2,一直到源点结束。

ISAP算法贴好标签之后,从源点开始,沿着高度减1且capflow的方向前进。例如,h[1]=3,h[2]=2,h[4]=1,h[6]=0,是不是很快就找到汇点了?之后沿着增广路1-2-4-6增流。在当前节点无法前进时,重贴标签。这种算法被称为“标签算法”或“ISAP算法”。

ISAP算法算法设计:(1)确定合适数据结构。采用链式前向星存储混合网络。(2)对网络结点贴标签,即标高操作。(3)找可增广路。如果源点的高度≥结点数,算法结束;否则从源点开始,沿着高度h(u)=h(v)+1且有可行邻接边(capflow)的方向前进,如果到达汇点,则转向第4步;如果无法行进,则转向第5步。

ISAP算法(4)增流操作:沿着找到的可增广路同向边增流,反向边减流。(5)重贴标签:如果拥有当前结点高度的结点只有一个,则转向第6步;令当前结点的高度=所有邻接点高度的最小值+1;如果没有可行邻

文档评论(0)

1亿VIP精品文档

相关文档