1 a = [1,1,1,2,2,3,4]; % 起點節點 2 b = [2,3,4,3,5,4,5]; % 終點節點 3 c = [3,2,2,1,3,4,3]; % 對應權值 4 g = digraph(a,b,c); % 創建圖 5 [path,distance] = shortestpath(g,1,5); % 計算最短路 6 plot(g) %顯示圖,沒必要顯示可以不寫
在Matlab中有可以計算最短路的函數,先用digraph生成加權圖,再用shortestpath計算最短路。
Matlab代碼可以計算上面有向圖中節點 1 到 5 的最短路,path是最短路的路徑,distance是最短距離。
OK