————————————最短路径————————————
问题抽象:在带权有向图中A点(源点)到达B点(终点)的多条路径中,寻找一条各边权值之和最小的路径,即最短路径。
两种常见的最短路径问题:
一、 单源最短路径—用Dijkstra(迪杰斯特拉)算法
二、所有顶点间的最短路径—用Floyd(弗洛伊德)算法
Dijkstra算法思想
① 初始化:
● 将源点v0加到S中,即S[v0] = true;
● 将v0到各个终点的最短路径长度初始化为权值,即D[i] = G.arcs[