最短路径心得

Dijkstra Algorithm:解决无负权边带权有向图/无向图的单源最短路。

 

Bellman-Ford Algorithm:解决含负权边带权有向图的单源最短路。

不能处理带负权边的无向图。(因为可以来回走一条负权边)

图中不能包含权值总和为负值的回路。(负权值回路)

 

Dijkstra Algorithm

Dijkstra算法在求解过程中,源点到集合P内各顶点的最短路径一旦求出,则之后不变了,修改的仅仅是源点到P外各顶点的最短路径长度.

Bellman-Ford Algorithm

Bellman-Ford算法在求解过程中,每次循环都要修改所有顶点的dist[ ],也就是说源点到各顶点最短路径长度一直要到算法结束才确定下来.

 

SPFA Algorithm 

优化过的Bellman-Ford Algorithm。

快速求解含负权边有向图的单源最短路。

可以用SPFA判断图有无负权环。

 

FloydWarshall算法

用于求每一顶点之间的最短路。

有向图,无向图,负权边皆不要求。

复杂度(n³)

 

 

posted @ 2017-08-31 08:47  Roni_i  阅读(606)  评论(0编辑  收藏  举报