单源最短路径

发布时间:2020-09-13 07:57:02 作者:zmh009_NAME
来源:网络 阅读:529

以下为找到一条单源最短路径的思想与思路描述


自己最近看了一下关于单源最短路径的算法,其基础是DijKstra算法从某个起点开始,选择直接连接的最短路径点,更新最短路径长并逐渐扩到终点。


如图所示的路径:(手工画图,若丑勿怪单源最短路径

单源最短路径起点为1,寻找到终点3,则操作如下:

一、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),寻找完毕;


总结:

对每个点存储到该点对应的最短路径,如果有最短的路径则更新(初始每个路径长为无穷大);

  1. 从起点开始寻找可直接连接的点并更新路径;

  2. 如果无直接连接点或无更新点,则改点寻找结束,并找下一个有最短路径点开始;

  3. 如果有最短路径的点则再次寻找并更新路径;

  4. 如果找到终点且该终点路径为可继续寻找路径的点里的最短路径,则该路径为单源最短路径;

推荐阅读:
  1. thymeleaf获取系统根路径
  2. Bootstrap 路径分页标签和徽章组件

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

路径 单源 最短

上一篇:C#基于HttpWebRequest实现发送HTTP请求的方法分析

下一篇:JavaScript获取中英文混合字符串长度的方法示例

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》