from911 发表于 2004-12-31 10:31

Matlab版的最短路程序谁有?

给共享一下!谢谢!

xing1 发表于 2005-1-6 16:32

<P>这里给你个floyd算法的代码。</P><P>clear;
clc; </P><P>%==========================================================================
                   %输入你的对称矩阵
%==========================================================================</P><P>n=input('message')
w=zeros(n);
w=[];     % 只需输一半,另一半用转置即可
w=w+w';</P><P>M=10000000;   %M 表示无限大</P><P>for i=1:n
    for j=1:n
    if  w(i,j)==0 &amp; i~=j
        w(i,j)=M;
    end
end
end
    path=zeros(length(w)); </P><P>for k=1:n</P><P>   for i=1:n </P><P>      for j=1:n</P><P>         if w(i,j)&gt;w(i,k)+w(k,j) </P><P>            w(i,j)=w(i,k)+w(k,j); </P><P>            path(i,j)=k; </P><P>         end </P><P>      end </P><P>   end </P><P>end </P><P>w, path </P><P>你也可以参考:  <a href="http://mathserver.sdu.edu.cn/html/sxjm/texts/chapter5/5_3.htm" target="_blank" >http://mathserver.sdu.edu.cn/html/sxjm/texts/chapter5/5_3.htm</A><p></p></P>

from911 发表于 2005-1-9 19:02

谢谢!

from911 发表于 2005-1-25 23:39

通过仔细琢磨,自己实现了
页: [1]
查看完整版本: Matlab版的最短路程序谁有?