数学建模社区-数学中国

标题: Matlab版的最短路程序谁有? [打印本页]

作者: from911    时间: 2004-12-31 10:31
标题: Matlab版的最短路程序谁有?
给共享一下!谢谢!
作者: xing1    时间: 2005-1-6 16:32

这里给你个floyd算法的代码。

clear; , W( P5 T; p; o" H1 m+ S clc;

%========================================================================== / `- V) e; ^. `% `+ M3 x* m; n %输入你的对称矩阵 * h) ~( ~7 P6 ~0 R9 n6 M; @4 M%==========================================================================

n=input('message') / }% x0 K4 B; Jw=zeros(n);% g5 B, j; f0 c5 ~; z w=[]; % 只需输一半,另一半用转置即可 3 E# G4 ~0 `! C0 fw=w+w';

M=10000000; %M 表示无限大

for i=1:n! G D) @" ?5 ]9 a0 [; } for j=1:n 7 z9 _: x) }: ?2 E# H$ y/ R if w(i,j)==0 & i~=j ( J' Y# a0 s% A7 W& x2 H7 T+ P" @; ^ w(i,j)=M; 3 b; }+ P+ ~, ~9 o/ R, ] end+ E) N- C% \+ n0 l& A3 u end 2 S- {2 n7 Q% v' t' Pend/ N- D- y' c9 E" U! |. I path=zeros(length(w));

for k=1:n

for i=1:n

for j=1:n

if w(i,j)>w(i,k)+w(k,j)

w(i,j)=w(i,k)+w(k,j);

path(i,j)=k;

end

end

end

end

w, path

你也可以参考: http://mathserver.sdu.edu.cn/html/sxjm/texts/chapter5/5_3.htm


作者: from911    时间: 2005-1-9 19:02
谢谢!
作者: from911    时间: 2005-1-25 23:39
通过仔细琢磨,自己实现了




欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5