数学建模社区-数学中国

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

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

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

clear; 1 I/ p$ T- Q: o$ e$ ]$ J$ }clc;

%========================================================================== % }. p* B7 b# Q" {- M2 \4 q0 W2 y %输入你的对称矩阵8 r' M, ~0 B7 ` Z2 L3 { %==========================================================================

n=input('message') 3 m9 F- o e: o* A5 Y3 w) g# w, Sw=zeros(n); 8 K+ [5 H$ N$ U! F' Sw=[]; % 只需输一半,另一半用转置即可 - F! ]" _9 a- `1 j) Tw=w+w';

M=10000000; %M 表示无限大

for i=1:n 7 G* A7 i# h2 s3 m @! B. w0 m for j=1:n2 L0 t v5 i. t, e; W2 Y if w(i,j)==0 & i~=j 9 ~& ]# X: E, J' y4 N w(i,j)=M; - A5 ~% Z/ a6 t. b6 B% I end ! `8 e0 o! L7 E& \# a |# d4 \: zend " Y9 ]* @3 V. p( C' @end 8 S+ S0 U8 v/ H7 |) r) E5 E 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