最短路径Dijkstra算法.pptxVIP

  • 6
  • 0
  • 约1.53千字
  • 约 9页
  • 2023-02-16 发布于上海
  • 举报
会计学1最短路径Dijkstra算法 1 最短路径两点之间的最短路径问题:求从某个源点到其余各点的最短路径每一对顶点之间的最短路径第1页/共9页 求从源点到其余各点的最短路径的算法的基本思想: 依最短路径的长度递增的次序求得各条路径源点v1v2…其中,从源点到顶点v的最短路径是所有最短路径中长度最短者。第2页/共9页 2 Dijkstra算法单源最短路径问题是: 给定带权的有向图G=(V,E),源点v∈V,求从v到V中其余各顶点的最短路径。 如何求解上图中的最短路径问题,Dijkstra提出了一种解决方案。第3页/共9页 即迪杰斯特拉算法,其基本思想如下: 设置辅助数组Dist,其中每个分量Dist[k] 表示 当前所求得的从源点到其余各顶点 k 的最短路径的长度。1)在所有从源点出发的弧中选取一条权值最小的弧,即为第一条最短路径。V0和k之间存在弧V0和k之间不存在弧第4页/共9页 3)每次从集合V-S中取出具有最短特殊路径长度的顶点u,将u加到S中,同时对数组Dist做必要的修改。若 Dist[u]+[u][k]Dist[k]则将 Dist[k] 改为 Dist[u]+[u][k]。其中,特殊路径指从源点到u中间只经过S中顶点的路径。2)设置一个顶点集合S,存放最短路径的终点。顶点k为当前最短路径的终点,将Vk 加入集合S中,而Dist[k]为最短路径的长度

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档