数模论坛

 找回密码
 注-册-帐-号
搜索
热搜: 活动 交友 discuz
查看: 3086|回复: 3

能不能解释一下这个程序.应该怎样输入数据,需要输入一些什么数据?

[复制链接]
发表于 2007-6-8 22:41:49 | 显示全部楼层 |阅读模式
Floyd最短路算法的MATLAB程序
%floyd.m
              %
采用floyd算法计算图a中每对顶点最短路
              %d
是矩离矩阵
              %r
是路由矩阵
              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
              end

能不能解释一下这个程序.应该怎样输入数据,需要输入一些什么数据?
发表于 2007-6-9 17:41:17 | 显示全部楼层
邻接矩阵 :)
 楼主| 发表于 2007-6-9 19:05:18 | 显示全部楼层

回复 #2 qingquan1 的帖子

能不能举个实际的例子呢?图可以自己找,然后告诉我在什么地方输入什么矩阵就好,谢谢!
发表于 2007-6-10 22:53:19 | 显示全部楼层
在命令窗口输入floyd(a)
a=11 33  44
    33 0   55
    44 55 12
您需要登录后才可以回帖 登录 | 注-册-帐-号

本版积分规则

小黑屋|手机版|Archiver|数学建模网 ( 湘ICP备11011602号 )

GMT+8, 2024-11-27 10:22 , Processed in 0.061225 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表