单源最短路径
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了单源最短路径相关的知识,希望对你有一定的参考价值。
以下为找到一条单源最短路径的思想与思路描述
自己最近看了一下关于单源最短路径的算法,其基础是DijKstra算法:从某个起点开始,选择直接连接的最短路径点,更新最短路径长并逐渐扩到终点。
一、1找到直接相连的点及其路径长:2(9)、4(6)、5(11),更新点的最短路径数据,此时4(6)路径最短,则以4(6)为起点寻找;
二、4找到5(6+6=12),此时12 > 11不更新,则4(6)点寻找完毕,未结束;
三、此时已找的最短路径点为2(9),则点2可找到点3(9+12=21)并更新,此时2(9)点寻找完毕,21非最短距离,未结束;
四、此时可继续寻找的点为5(11),直接连接的点为3(11+5=16),此时16 < 21则更新点3(21)为3(16),此时点5寻找完毕;
五、此时在可寻找的点里3(16)为最短路径且3为终点(此处只有点3),寻找完毕;
总结:
对每个点存储到该点对应的最短路径,如果有最短的路径则更新(初始每个路径长为无穷大);
从起点开始寻找可直接连接的点并更新路径;
如果无直接连接点或无更新点,则改点寻找结束,并找下一个有最短路径点开始;
如果有最短路径的点则再次寻找并更新路径;
如果找到终点且该终点路径为可继续寻找路径的点里的最短路径,则该路径为单源最短路径;
本文出自 “zmh009” 博客,请务必保留此出处http://zmh009.blog.51cto.com/11619347/1877077
以上是关于单源最短路径的主要内容,如果未能解决你的问题,请参考以下文章