迪克斯特拉算法

来源:互联网 发布:java实现zip解压 编辑:程序博客网 时间:2024/05/21 09:38

求最短路已有成熟的算法:迪克斯特拉(Dijkstra)算法,其基本思想是按距从近到远为顺序,依次求得到的各顶点的最短路和距离,直至(或直至的所有顶点),算法结束。为避免重复并保留每一步的计算信息(因此效率并不高),采用了标号算法。下面是该算法。


算法结束时,从u0到各顶点v的距离由的最后一次的标号给出。在v进入si之前的标号l(v)叫T标号,v进入si时的标号l(v)叫P标号。算法就是不断修改各项点的T标号,直至获得P标号。若在算法运行过程中,将每一顶点获得P标号所由来的边在图上标明,则算法结束时,u0至各项点的最短路也在图上标示出来了。

例子



1 0