算法描述如下: 1)令arcs表示弧上的权值。若弧不存在,则置arcs为∞(在本程序中为MAXCOST)。S为已找到的从出发的的终点的集合,初始状态为空集。那么,从出发到图上其余各顶点可能达到的长度的初值为D=arcs[LocateVex(G,)],∈V; 2)选择,使得D=Min{D|∈V-S}; 3)修改从出发的到集合V-S中任一顶点的最短路径长度。