算法学习之-dijkstra图解问题

图解问题以 dijkstra算法为例.

寻找某个节点到其他节点的最短路径:

这个问题的关键有两点:

1、把首节点的距离设置为0,然后一次更新相邻的点的距离,在求出来的这些距离中,遍历找出最短的路径,进行下一轮的查找。一次往复,直到找不出点来。在查找的过程中,要定义一个boolean变量来记录已经被访问过的节点,在的查找过程中,已经访问过的不再访问。

2、如何快速高效的表示一张图结构,一般用 二维数组 表示节点与节点的延迟数据,也就是图的权重。我们可以用一个Map结构表示图的相邻结构,key作为节点编号,value可以是数组,数组的第一个元素表示下一个节点编号,第二个元素表示两个节点的延迟

注意:不用区别方向是因为,你当前节点的值,再回去的话,肯定会大于之前节点过来的值,我们是取最小值,所以自动就跳过了。

这里的图结构可以根据自己喜欢的样式来定义,能满足要求就可以。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值