求教各位高手:什么是MATLAB编程?怎么用MATLAB程序求解最短路径?谢谢

来源:百度知道 编辑:UC知道 时间:2024/05/17 02:22:07
本人课程设计急用,速度.
QQ:155328727
电子信箱: lwg160@126.com

用Dijkstra算法就可以了

以前的程序找不到了

也可以用Floyd算法,如下:
function[D,R]=floyd(a)

n=size(a,1);
D=a
for i=1:n
for j=1:n
R(i,j)=j;
end
end
R

for k=1:n
for i=1:n
for j=1:n
if D(i,k)+D(k,j)<D(i,j)
D(i,j)=D(i,k)+D(k,j);
R(i,j)=R(i,k);
end
end
end
k
D
R
存成Floyd.m
输入为带权邻接矩阵,最好自己找点资料,别人的程序都不如自己的好用