一、简介:
Dijkstra算法算是贪心思想实现的,首先把起点到所有点的距离存下来找个最短的,然后松弛一次再找出最短的,所谓的松弛操作就是,遍历一遍看通过刚刚找到的距离最短的点作为中转站会不会更近,如果更近了就更新距离,这样把所有的点找遍之后就存下了起点到其他所有点的最短距离。
二、步骤:
一个包含9条边6个点的有向图如下:
将图用二维数组进行存储:
此时再用一个dis数组存储算法目前阶段节点1到各个节点的最短的距离。(算法是从终点向起点倒推的,所以存储的是目前阶段各个节点到节点6最短距离):