用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
输入为带权邻接矩阵,最好自己找点资料,别人的程序都不如自己的好用
温馨提示:答案为网友推荐,仅供参考