最短路径(Dijkstra算法)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了最短路径(Dijkstra算法)相关的知识,希望对你有一定的参考价值。

实现城市之间铁路最短路径查找
No City POS In Map
0 北京 (540,214)
1 哈尔滨 (654,120)
2 呼和浩特 (483,200)
3 乌鲁木齐 (214,142)
4 上海 (612,341)
5 郑州 (511,297)
6 长沙 (503,395)
7 广州 (513,468)
8 福州 (590,423)
9 南京 (579,331)
10 西安 (448,300)
11 兰州 (389,277)
12 重庆 (416,368)
13 长春 (640,148)
14 南昌 (551,383)
-1
城市之间的铁路长度,未说明的两城之间没有铁路
0<-->2 = 667;
0<-->5 = 689;
0<-->9 = 1160;
0<-->13 = 1046;
1<-->13 = 242;
2<-->3 = 3036;
3<-->11 = 1892;
4<-->8 = 1180;
4<-->9 = 303;
4<-->14 = 825;
5<-->6 = 898;
5<-->9 = 695;
5<-->10 = 511;
6<-->7 = 707;
6<-->12 = 1419;
6<-->14 = 482;
7<-->8 = 1588;
10<-->11 = 676;
10<-->12 = 1346;

要求 : 输入起始城市与终点城市
输出最短路径: 顺序给出路径中的城市号,以及路径总长

0<-->2 = 667;
0<-->5 = 689;
0<-->9 = 1160;
0<-->13 = 1046;
1<-->13 = 242;
2<-->3 = 3036;
3<-->11 = 1892;
4<-->8 = 1180;
4<-->9 = 303;
4<-->14 = 825;
5<-->6 = 898;
5<-->9 = 695;
5<-->10 = 511;
6<-->7 = 707;
6<-->12 = 1419;
6<-->14 = 482;
7<-->8 = 1588;
10<-->11 = 676;
10<-->12 = 1346;
不是已经有答案了吗?还问什么呢
参考技术A 北京-呼和浩特,667
北京-长沙689?

以上是关于最短路径(Dijkstra算法)的主要内容,如果未能解决你的问题,请参考以下文章

有向网络(带权的有向图)的最短路径Dijkstra算法

最短路径(Dijkstra算法)

最短路径 深入浅出Dijkstra算法(一)

图-最短路径-Dijkstra及其变种

Dijkstra算法

最短路径算法(Dijkstra)