迪克斯特拉算法
2015-07-31 20:00
218 查看
求最短路已有成熟的算法:迪克斯特拉(Dijkstra)算法,其基本思想是按距从近到远为顺序,依次求得到的各顶点的最短路和距离,直至(或直至的所有顶点),算法结束。为避免重复并保留每一步的计算信息(因此效率并不高),采用了标号算法。下面是该算法。
![](http://img.blog.csdn.net/20150731201352379?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
算法结束时,从u0到各顶点v的距离由的最后一次的标号给出。在v进入si之前的标号l(v)叫T标号,v进入si时的标号l(v)叫P标号。算法就是不断修改各项点的T标号,直至获得P标号。若在算法运行过程中,将每一顶点获得P标号所由来的边在图上标明,则算法结束时,u0至各项点的最短路也在图上标示出来了。
例子
![](http://img.blog.csdn.net/20150731205132776)
算法结束时,从u0到各顶点v的距离由的最后一次的标号给出。在v进入si之前的标号l(v)叫T标号,v进入si时的标号l(v)叫P标号。算法就是不断修改各项点的T标号,直至获得P标号。若在算法运行过程中,将每一顶点获得P标号所由来的边在图上标明,则算法结束时,u0至各项点的最短路也在图上标示出来了。
例子
相关文章推荐
- hdu 1789 贪心
- Markdown编辑器使用说明
- String 用法
- 转)Linux学习路线
- IOS - 多线程
- hdoj 2899 Strange fuction【二分求解方程】
- (剑指Offer)面试题50:树中两个结点的最低公共祖先
- 冒泡排序
- 学习习惯之时间管理工具
- 一步一步搭建MHA环境
- hdu5335 搜索+优化
- VS.NET 2005 wince SDK installed in vs.net 2008
- Default-568h@2x.png pngcrush caught libpng error:
- IDTHook 深入学习
- 2187 悼念512汶川大地震遇难同胞——老人是真饿了
- 有关SD卡接线的探索(为什么标准SD卡是九根线,而一般原理图上都是11根线或更多呢?)
- NYOJ-448-寻找最大数
- Flexible Space with Image
- ORACLE dbca报错 ORA-01034:ORACLE not available
- Spark初探