最短路径Dijkstra算法
Dijkstra算法简介 Dijkstra算法算是贪心思想实现的,首先把起点到所有点的距离存下来找个最短的,然后松弛一次再找出最短的,所谓的松弛操作就是,遍历一遍看通过刚刚找到的距离最短的点作为中转站会不会更近,如果更近了就更新距离,这样把所有的点找遍之后就存下了起点到其他所有点的最短距离。 算法核心 选择一个节点标记成已经遍历 选择从起点到其他节点路径最短的节点,如图所示起始点0到1、2、3的距离分别为5、2、6,当前不可达的4记作无穷大,则下一个被选择的节点就是2 在遍历过程中更新起始点到其他节点的最短距离 从起始点0到1的距离为5,按照步骤一选取下个节点2后,0->2->1距离比0->1距离要短(这里已经间接说明为什么第一步要选择2的原因了),需要将距离由..
更多