一、 Dijkstra 算法

今天去面试遇到一个算法 Dijkstra 算法(迪杰斯特拉算法),解决求最短路径问题

快速理解:

1:选取初始节点作为一个集合,D(v)表示初始节点到V节点的最短路径

2:所有能直接到达V的节点路径记为D(v)=距离,不能直接到达的节点路径记为D(v)=无穷

3:选取D(v)最小的节点加入初始节点集合,最短路径记为D(w)=min(D(w),D(v)+j(v,w))(j(v,w)为节点V到W的距离)

4:重复步骤3,直到所有节点都加入初始节点集合

图理解:

一、 Dijkstra 算法_第1张图片
dijkstra图

你可能感兴趣的:(一、 Dijkstra 算法)