您的位置:首页 > 编程语言 > MATLAB

最短路算法,matlab程序

2007-05-03 19:00 246 查看
%我自己写的一个最短路算法,matlab程序

(过去写的,在我的百度空间上面也有)

clear;

clc;

M=1000;

a(1,:)=[0,50,M,40,25,10];

a(2,:)=[zeros(1,2),15,20,M,25];

a(3,:)=[zeros(1,3),10,20,M];

a(4,:)=[zeros(1,4),10,25];

a(5,:)=[zeros(1,5),55];

a(6,:)=zeros(1,6);

a=a+a';
%----------以上为矩阵数据--------------

d=a(1,:)
a(:,1)=a(:,1)+M;
t=1;
Row=1;
while t<=length(a)
    temp=find(a(Row,:)==min(a(Row,:)));
   for i=1:length(temp);
       a(:,temp(1))=a(:,temp(1))+M;
       if min(a(Row,:))+d(Row)<d(temp(i))           
         d(temp(i))=min(a(Row,:))+d(Row)
       end      
      
   end 
   a
   Row
 t=t+1;
 Row=temp(1);
   for i=2:length(temp);
       a(:,temp(i))=a(:,temp(i))-M;  
   end
end
d

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  matlab 算法 百度