码迷,mamicode.com
首页 > 其他好文 > 详细

最短路径算法(Dijkstra算法、Floyd-Warshall算法)

时间:2014-07-30 20:25:54      阅读:178      评论:0      收藏:0      [点我收藏+]

标签:style   http   color   使用   问题   ar   div   算法   

最短路径算法具体的形式包括:

确定起点的最短路径问题:即已知起始结点,求最短路径的问题。适合使用Dijkstra算法

确定终点的最短路径问题:即已知终结结点,求最短路径的问题。在无向图中,该问题与确定起点的问题完全等同;在有向图中,该问题等同于把所有路径方向反转的确定起点的问题。

确定起点终点的最短路径问题:即已知起点和终点,求两结点之间的最短路径。

全局最短路径问题:求图中所有的最短路径。Floyd-Warshall算法

 

dijkstra算法思想:
开始时,S={u},T=V-{u}; 对T中所有顶点x,如果u到x存在边,置d(u,x)=c(u,x); 否则d(u,x)=无穷大。
循环:对T中所有顶点x,寻找d(u,x)最小的顶点t,即:d(u,t)=min{d(u,x)|x属于T},则d(u,t)就是顶点t到顶点u的最短路径距离。同时,顶点t也是集合T中所有顶点距离u最近的顶点。把顶点t从T中删除,把它并入S。然后对T中与t相邻接的所有顶点x,用下面的公式更新d(u,x)的值:d(u,x)=min{d(u,x), d(u,t) +c(t,x)}。
继续“循环”,一直到T空为止。
 
Floyd-Warshall算法和dijkstra算法思想类似:都是通过绕行中间节点找到端到端的最短路径,不再描述。

最短路径算法(Dijkstra算法、Floyd-Warshall算法),布布扣,bubuko.com

最短路径算法(Dijkstra算法、Floyd-Warshall算法)

标签:style   http   color   使用   问题   ar   div   算法   

原文地址:http://www.cnblogs.com/mmcmmc/p/3878716.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!