最短路问题Bellman-Ford算法 SPFA算法(Bellman-Ford算法的改进版本) Floyd-Warshall算法 Johnson最短路算法(英语:Johnson's algorithm) 双向搜索 使用拓扑排序算法可以在有权值的DAG中以线性时间( θ ( E + V ) {\displaystyle
戴克斯特拉算法戴克斯特拉算法(英語:Dijkstra's algorithm),又稱迪杰斯特拉算法、Dijkstra算法,是由荷兰计算机科学家艾茲赫尔·戴克斯特拉在1956年发现的算法,并于3年后在期刊上发表。戴克斯特拉算法使用类似廣度优先搜索的方法解决赋权图的单源最短路径问题。
Floyd-Warshall算法Floyd-Warshall算法(英語:Floyd-Warshall algorithm),中文亦称弗洛伊德算法或佛洛依德算法,是解决任意两点间的最短路径的一种算法,可以正確處理有向圖或负权(但不可存在负权回路)的最短路径問題,同时也被用于计算有向图的传递闭包。 Floyd-Warshall算法的时间复杂度為
贝尔曼-福特算法贝尔曼-福特算法(英語:Bellman–Ford algorithm),求解单源最短路径问题的一种算法,由理查德·貝尔曼和小萊斯特·倫道夫·福特创立。有时候这种算法也被称为貝爾曼-福特-摩爾算法(Bellman–Ford–Moore algorithm),因为愛德華·F·摩爾也为这个算法的发展做出了贡献。它的原理是对图进行
克鲁斯克尔演算法克魯斯克爾演算法(英語:Kruskal's algorithm)是一種用來尋找最小生成樹的演算法,由美國數學家約瑟夫·克魯斯克爾在1956年發表。用來解決同樣問題的還有普林演算法和布盧瓦卡演算法(英语:Borůvka's algorithm)等。三種演算法都是贪心算法的應用。和布盧瓦卡演算法不同的地