Dijkstra算法(Matlab实现)


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


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM