数据结构与算法 图的典型应用——最短路径 Dijkstra算法

在这里插入图片描述
求A点到各点的最短路径
源点为A
dist[] :距离源点距离
path[]:上一结点
selected[]:访问标记,1为访问过,0为未访问

画表格形式求最短路径
首先图中可以得知,以A为源点,A可以到达B、C、D三点,在图中填写三点的距离以及上一结点,不能到达的点用∞表示,从①中选出未被访问结点中,距离最短的作为下一个访问结点,很明显是2为最短距离,下一个访问的为C结点。
表格②中6为最短距离,下一个访问结点为F,F可达D、G两点,比较A->D和A->C->F->D的距离,发现A到D的距离大于A->C->F->D,所以更新表格,D的上一结点更新为F,距离更新为11。以此类推更新表格
在这里插入图片描述
在这里插入图片描述

依次更新直到结点全部访问。最后⑦就是A到各个结点的最短距离。
某站视屏参考,用作学习交流,如有侵权联系删除。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值