这个算法是用来解决最短路径问题的。
使用
[cost rute] = dijkstra(graph, source, destination)
注:图是表示边值的矩阵。如果节点与其他节点没有连接,则边值为0。
例子:
求从节点1到节点7的最短路径。
>> g = [0 3 9 0 0 0 0;
0 0 0 7 1 0 0;
0 2 0 7 0 0 0;
0 0 0 2 8;
0 0 4 5 0 9 0;
0 0 0 0 0 4;
0 0 0 0 0 0 0;
];
>> [cost rute] = dijkstra(G,1,7)
它将导致
成本= 15
Rute = [7 6 4 5 2 1]
引用作为
迪马斯Aryo(2021)。迪杰斯特拉算法(//www.tianjin-qmedu.com/matlabcentral/fileexchange/36140-dijkstra-algorithm), MATLAB中央文件交换。检索.