ZT: 台湾清华大学某员工/学生主页上的Dijkstra 最短路径算法,配合图表,讲解的非常清楚
来源:互联网 发布:软件安装手册模板 编辑:程序博客网 时间:2024/06/06 02:41
这是台湾清华大学某员工或者学生主页上的Dijkstra 最短路径算法,配合图表,是我所看到的此算法的解释中,讲解的非常清楚的!
来源:http://nthucad.cs.nthu.edu.tw/~yyliu/personal/nou/04ds/dijkstra.html
代克思托演算法 (Dijkstra's algorithm)
Dijkstra's algorithm 是以某一節點為出發點,計算從該節點出發到所有其他節點 的最短路徑。
首先以某一節點當作出發點,在與其相連且尚未被選取的節點裡,選擇加入離出發點距離 最短的節點,並且透過新增的節點更新到達其他節點的距離。 如此重覆加入新節點,直到所有的節點都被加入為止。
※ 請把課本 P.317頁,圖11-20 e 到 c 邊的權重,從8 更正為 6。
- 起始。
步驟 即將新增 abcdefg 1-------aps. "-" 代表目前無法到達,所以距離為無限大,即課本的 - 從 a 開始,與 a 相連的節點有兩個 (f, b)。
a 與 a 的距離為 0。 (新增 0)
f 與 a 的距離為 3。 (新增 3)
b 與 a 的距離為 32。 (新增 32)
與 a 距離最短的節點為 f。
步驟 即將新增 abcdefg 1-------a2032---3-fps. 加入後的節點將著色顯示。 - 加入 f 後,與 f 相連的節點有兩個 (c, b)。
透過 f , c 與 a 的距離為 3 + 2 = 5。 (新增 5)
透過 f , b 與 a 的距離為 3 + 7 = 10。 (取代 32)
與 a 距離最短的節點為 c。
步驟 即將新增 abcdefg 1-------a2032---3-f30105--3-c - 加入 c 後,與 c 相連的節點有三個 (b, e, g)。
透過 c , b 與 a 的距離為 5 + 21 = 26。 (保留 10)
透過 c , e 與 a 的距離為 5 + 6 = 11。 (新增 11)
透過 c , g 與 a 的距離為 5 + 11 = 16。 (新增 16)
與 a 距離最短的節點為 b。
步驟 即將新增 abcdefg 1-------a2032---3-f30105--3-c40105-11316b - 加入 b 後,與 b 相連的節點有一個 (e)。
透過 b , e 與 a 的距離為 10 + 12 = 22。 (保留 11)
與 a 距離最短的節點為 e。
步驟 即將新增 abcdefg 1-------a2032---3-f30105--3-c40105-11316b50105-11316e - 加入 e 後,與 e 相連的節點有一個 (d)。
透過 e , d 與 a 的距離為 11 + 13 = 24。 (新增 24)
與 a 距離最短的節點為 g。
步驟 即將新增 abcdefg 1-------a2032---3-f30105--3-c40105-11316b50105-11316e601052411316g - 加入 g 後,與 g 相連的節點有一個 (d)。
透過 g , d 與 a 的距離為 16 + 9 = 25。 (保留 24)
與 a 距離最短的節點為 d。
步驟 即將新增 abcdefg 1-------a2032---3-f30105--3-c40105-11316b50105-11316e601052411316g701052411316d - 加入 d 後,所有結點皆已加入,所以Dijkstra's algorithm完成。
所有節點與 a 的最短距離如下:
abcdefga01052411316
- ZT: 台湾清华大学某员工/学生主页上的Dijkstra 最短路径算法,配合图表,讲解的非常清楚
- 数据结构--Dijkstra算法最清楚的讲解
- Dijkstra算法的最短路径实现
- 图的最短路径dijkstra算法
- Dijkstra 算法求非负权图的最短路径
- dijkstra最短路径算法的实现
- 最短路径的Dijkstra算法
- Dijkstra最短路径算法的优化
- Dijkstra算法--图的最短路径
- 图的最短路径算法Dijkstra算法
- 最短路径下的Dijkstra算法和Floyd算法
- 图的最短路径(dijkstra算法/floyd算法)
- 最短路径算法-Dijkstra算法的实质与变体
- 【算法】图的最短路径(Dijkstra算法)
- 图的最短路径算法(Dijkstra,Floyd)的实现
- 最短路径之Dijkstra算法思想讲解
- 最短路径之Dijkstra算法详细讲解
- 最短路径之Dijkstra算法详细讲解
- 红黑树数据结构剖析
- QT4的中文问题解决方法
- 1-n全排列的几种算法
- C#开发和调用webservice
- 1008_右旋
- ZT: 台湾清华大学某员工/学生主页上的Dijkstra 最短路径算法,配合图表,讲解的非常清楚
- VC控件
- 位运算 与 生产者消费者
- 求组合数
- 694 - The Collatz Sequence---关于goto语句的一些反思(还有uva的Runtime Error问题的解决)
- 外面的世界很无奈,大家做事要严谨,细心噢,不要贪心,我同事昨天都被骗了2000RMB
- 22,UC(1)
- OCP-1Z0-052-V8.02-152题
- tftp ------简要配置