用Dijkstra(迪杰斯特拉算法),求下图中从顶点0到其他各顶点的最短路径,完成表格填写
时间: 2024-05-20 15:12:25 浏览: 95
以下是使用迪杰斯特拉算法求解的过程和最终结果:
1. 初始化
| 顶点 | 已知最短路径长度 | 当前是否已确定最短路径 |
| ---- | ---- | ---- |
| 0 | 0 | 已确定 |
| 1 | ∞ | 未确定 |
| 2 | ∞ | 未确定 |
| 3 | ∞ | 未确定 |
| 4 | ∞ | 未确定 |
| 5 | ∞ | 未确定 |
2. 第一轮更新
从已确定的顶点0出发,更新其相邻未确定顶点的最短路径长度(即0→1,0→2,0→5):
| 顶点 | 已知最短路径长度 | 当前是否已确定最短路径 |
| ---- | ---- | ---- |
| 0 | 0 | 已确定 |
| 1 | 1 | 未确定 |
| 2 | 5 | 未确定 |
| 3 | ∞ | 未确定 |
| 4 | ∞ | 未确定 |
| 5 | 2 | 未确定 |
3. 第二轮更新
从当前最短路径长度最小的未确定顶点1出发,更新其相邻未确定顶点的最短路径长度(即1→3,1→4):
| 顶点 | 已知最短路径长度 | 当前是否已确定最短路径 |
| ---- | ---- | ---- |
| 0 | 0 | 已确定 |
| 1 | 1 | 已确定 |
| 2 | 5 | 未确定 |
| 3 | 4 | 未确定 |
| 4 | 7 | 未确定 |
| 5 | 2 | 未确定 |
4. 第三轮更新
从当前最短路径长度最小的未确定顶点3出发,更新其相邻未确定顶点的最短路径长度(即3→2,3→4):
| 顶点 | 已知最短路径长度 | 当前是否已确定最短路径 |
| ---- | ---- | ---- |
| 0 | 0 | 已确定 |
| 1 | 1 | 已确定 |
| 2 | 4 | 未确定 |
| 3 | 4 | 已确定 |
| 4 | 6 | 未确定 |
| 5 | 2 | 未确定 |
5. 第四轮更新
从当前最短路径长度最小的未确定顶点2出发,更新其相邻未确定顶点的最短路径长度(即2→4):
| 顶点 | 已知最短路径长度 | 当前是否已确定最短路径 |
| ---- | ---- | ---- |
| 0 | 0 | 已确定 |
| 1 | 1 | 已确定 |
| 2 | 4 | 已确定 |
| 3 | 4 | 已确定 |
| 4 | 5 | 未确定 |
| 5 | 2 | 未确定 |
6. 第五轮更新
从当前最短路径长度最小的未确定顶点5出发,更新其相邻未确定顶点的最短路径长度(即5→2,5→4):
| 顶点 | 已知最短路径长度 | 当前是否已确定最短路径 |
| ---- | ---- | ---- |
| 0 | 0 | 已确定 |
| 1 | 1 | 已确定 |
| 2 | 4 | 已确定 |
| 3 | 4 | 已确定 |
| 4 | 5 | 已确定 |
| 5 | 2 | 已确定 |
因此,从顶点0到其他各顶点的最短路径长度分别为:
| 顶点 | 最短路径长度 |
| ---- | ---- |
| 0 | 0 |
| 1 | 1 |
| 2 | 4 |
| 3 | 4 |
| 4 | 5 |
| 5 | 2 |
阅读全文
相关推荐



















