Dijkstra算法是图论中经典的最短路径算法之一,主要用于解决单源最短路径问题。
单源最短路径问题,即求某个源节点到其他各个节点的最短路径。
Dijkstra算法采用了贪心算法的思想,如图求1号节点到其他各个节点最短路径。
首先从1号节点出发,扩展已知的最短路径集合,每次优先“松弛”最近的节点所相连的边,直到所有扩展范围覆盖全部,所得即最优结果。
由于负权值使得上一次最优结果积累失效,所以Dijkstra算法不能解决负权路问题。
Dijkstra算法是图论中经典的最短路径算法之一,主要用于解决单源最短路径问题。
单源最短路径问题,即求某个源节点到其他各个节点的最短路径。
Dijkstra算法采用了贪心算法的思想,如图求1号节点到其他各个节点最短路径。
首先从1号节点出发,扩展已知的最短路径集合,每次优先“松弛”最近的节点所相连的边,直到所有扩展范围覆盖全部,所得即最优结果。
由于负权值使得上一次最优结果积累失效,所以Dijkstra算法不能解决负权路问题。
转载于:https://www.cnblogs.com/zhongzihao/p/9478001.html