2019matlab中的floyd,基于matlab的floyd算法详解

function [d,path]=floyd(a,sp,ep)

% floyd   - 最短路问题

%

% Syntax: [d,path]=floyd(a,sp,ep)

%

% Inputs:

%    a    - 距离矩阵是指i到j之间的距离,可以是有向的

%    sp   - 起点的标号

%    ep   - 终点的标号

%

% Outputs:

%    d    - 最短路的距离

%    path - 最短路的路径

%

% Example:

%     a =[

%         0   50  Inf 40 25  10  ;

%         50  0   15  20 Inf 25  ;

%         Inf 15  0   10 20  Inf ;

%         40  20  10  0  10  25  ;

%         25  Inf 20  10 0   55  ;

%         10  25  Inf 25 55  0  ];

%      [d,path]=floyd(a,2,5)

%

%

% Other m-files required: none

% Subfunctions: none

% MAT-files required: none

%

% See also: OTHER_FUNCTION_NAME1,  OTHER_FUNCTION_NAME2

% Author: Xiaoyong Ren

%Packaging Engineering,  Xi'an University of Technology .

% email :horlab@sohu.com

% QQ: 170071606

% December 2004; Last revision: 24-May-2005

%------------- BEGIN CODE --------------

n=size(a,1);

D=a;

path=zeros(n,n);

for i=1:n

for j=1:n

if D(i,j)~=inf

path(i,j)=j; %j是i的后续点

end

end

end

for k=1:n

for i=1:n

for j=1:n

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

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

path(i,j)=path(i,k);

end

end

end

end

p=[sp];

mp=sp;

for k=1:n

if mp~=ep

d=path(mp,ep);

p=[p,d];

mp=d;

end

end

d=D(sp,ep);

path=p;

%------------- END OF CODE --------------

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/526983.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

.1 matlab,1 MATLAB集成环境

启动MATLAB后,将进入MATLAB集成环境。MATLAB集成环境包括MATLAB主窗口、命令窗口(Command Window)、工作空间窗口(Workspace)、命令历史窗口(Command History)、当前目录窗口(Current Directory)和启动平台窗口(Launch Pad)。一、命令窗口命令窗口是MATLAB的主要交互…

matlab 读取mov文件格式,VideoReader 支持的文件格式 - MATLAB VideoReader.getFileFormats - MathWorks 中国...

获取受支持的文件格式。formats VideoReader.getFileFormats()Video File Formats:.asf - ASF File.asx - ASX File.avi - AVI File.m4v - MPEG-4 Video.mj2 - Motion JPEG2000.mov - QuickTime movie.mp4 - MPEG-4.mpg - MPEG-1.wmv - Windows Media Video此输出适用于 Windo…

java parseint(12.0),如何实现一个parseInt

如何实现一个parseIntfunction(string, [radix]) {}如果string不为字符串类型, 则先将string转化为字符串类型string会忽略前后的空白依次解析字符, 如果字符不是指定基数中的字符( 例如:2进制中的3、 10进制中的f )则停止解析( 首字符为或-时除外 ), 返回已经解析好的整数如果…

matlab 类 继承,继承MATLAB中的密封类

在MATLAB中,一个类的attributes之一(在classdef之后定义)是Sealed,这意味着没有类可以将它用作超类(或者更确切地说,“表示这些类没有被设计为支持子类. “1).例如,如果我尝试实例化一个定义如下的类(考虑表是密封的)&#xff1a;classdef SomeLie < tableend我会得到’MATL…

smarty 引用php类,smarty 的PHP引用

摘要&#xff1a;<?phpsession_start ();//改时区date_default_timezone_set("PRC");//引入模板引擎require smarty.init.php;//对象class test{public $site"php中文网";public function welcome(){return &session_start();//改时区date_default…

平行志愿遵循分数优先php,2020平行志愿的录取规则是什么有哪些优势

摘要&#xff1a; 2020平行志愿的录取规则是什么有哪些优势为你介绍平行志愿的投档原则仍为“分数优先&#xff0c;遵循志愿”&#xff0c;而传统的顺序志愿则是根据“志愿优先&#xff0c;按分排序”。 2020平行志愿录取规则 平行志愿的投档原则仍为“分数优先&#xff0c;遵循…

qq收不到oracle邮件,腾讯企业邮箱发送邮件失败

一直使用的腾讯企业邮箱&#xff0c;但是最近发现发送邮件全是失败的&#xff0c;提示&#xff1a;javax.mail.MessagingException: Could not connect to SMTP host: smtp.exmail.qq.com, port: 25;nested exception is:java.net.ConnectException: 连接超时 (Connection time…

Oracle quartile函数,Oracle分析函数六——数据分布函数及报表函数

Oracle 分析函数——数据分布函数及报表 函数CUME_DIST功能描述&#xff1a;计算一行在组中的相对位置&#xff0c; CUME_DIST 总是返回大于 0 、小于或等于 1 的数&#xff0c;该数表示该行在 N 行中的位置。例如&#xff0c;在一个 3 行的组中&#xff0c;返回的累计分布值为…

oracle ora 03137,今天遇到奇怪的ORA-03137错误(包含trc文件)

今天下午同事突然反映&#xff0c;打开一个用户数据的时候报错&#xff1a;ora-03114:未连接数据库很奇怪的错误信息&#xff0c;查看alert log文件系统在报错&#xff1a;2010/6/24 13:46:46 Thu Jun 24 13:46:46 2010Errors in file /u01/oracle/diag/rdbms/orcl/orcl/t…

redhat配置oracle yum源,Redhat5和6 YUM源配置的区别

一、概述随着各个软件版本的不断升级&#xff0c;我们需要掌握的软件特性也越来越多&#xff0c;技术的不断更新也促进了我们脑细胞的循环。 今天在配置RedHat6.3的yum源时也出现了一个有趣的事情&#xff0c;下面请听俺道来。二、问题处理问题源于哥们处&#xff0c;自己就搭建…

脚本自启动oracle,自动启动和关闭Oracle 脚本

配置完ASM实例后&#xff0c;每次启动oracle数据库服务器的时候要先启动ASM实例&#xff0c;然后启动数据库实例&#xff1b;关闭的时候&#xff0c;需要先关闭oracle数据库实例&#xff0c;然后关闭ASM实例&#xff1b;敲起命来来麻烦的很&#xff0c;因而改进了原来的shell脚…

php中fread()函数,php fread()函数

定义fread()函数用于读取文件。语法PHP fread()函数具有以下语法。fread(file,length)参数参数是否必须描述file需要。要读取的打开文件length需要。要读取的最大字节数返回值此函数返回读取的字符串&#xff0c;或失败时为FALSE。实例1/*http://www.manongjc.com/article/1800…

linux启动tongweb命令,linux7开机自启动东方通tongweb

自启动服务&#xff1a;可以通过把TongWeb设置为系统服务来实现。具体实现&#xff1a;以root用户进行操作&#xff0c;在/etc/init.d目录下编写TongWeb的服务脚本tongweb&#xff0c;用来控制TongWeb的启动和停止。脚本内容如下&#xff1a;#!/bin/bash## tongweb This shell …

linux默认的https端口,如何在Ubuntu 18.04 Bionic Beaver Linux上拒绝除HTTP端口80和HTTPS端口443之外的所有传入端口...

目的目的是启用UFW防火墙&#xff0c;拒绝所有传入端口&#xff0c;但是在Ubuntu 18.04 Bionic Beaver Linux上仅允许HTTP端口80和HTTPS端口443。操作系统和软件版本操作系统&#xff1a;-Ubuntu 18.04仿生海狸要求需要特权才能访问您的Ubuntu 18.04 Bionic Beaver。约定&#…

go 跨平台编译linux,golang 跨平台编译

只需要指定目标操作系统的平台和处理器架构即可&#xff1a;命令行方式因为不支持CGO&#xff0c;所以要禁用CGOSET CGO_ENABLED0 // 禁用CGOSET GOOSlinux // 目标平台是linuxSET GOARCHamd64 // 目标处理器架构是amd64然后再执行go build命令&#xff0c;得到的就是能够在Lin…

linux7 修改服务启动项目命令,centos7服务部署flask项目

8种机械键盘轴体对比本人程序员&#xff0c;要买一个写代码的键盘&#xff0c;请问红轴和茶轴怎么选&#xff1f;centos7语言配置问题登录服务器&#xff0c;注意观察是否出现以下警告提示warning: setlocale: LC_CTYPE: cannot change locale (en_US.utf8): No such file or d…

虚拟机linux中怎样打开qt,虚拟机中在Centos 4.7中安装qt-x11-opensource-4.4.3

本人最近学习qt&#xff0c;把qt安装在了虚拟机下&#xff0c;用的是免费的Linux&#xff0c;qt是Linux下开发c不错的软件&#xff0c;经过了2天的奋战&#xff0c;终于把qt安装在了自己的机器上面&#xff0c;现在把安装步骤告诉大家&#xff0c;希望对你们安装错误的同志们有…

linux top p 乱码,将Linux top命令输入到指定文件时的乱码问题

根据需求&#xff0c;项目需要读取linux系统环境参数&#xff0c;所以需要将top命令的输出结果输入到文件中。用重定向命令如下&#xff1a;topresult.txt。用vi打开文件&#xff1a;viresult.txt。显示的根据需求&#xff0c;项目需要读取linux系统环境参数&#xff0c;所以需…

linux龙芯自动挂载u盘,Windows Subsystem for Linux (WSL)挂载移动硬盘U盘

WSL想通过移动硬盘处理一些数据&#xff0c;结果进去了无法发现移动硬盘&#xff0c;于是搜了好久也没有一个正确的解决办法&#xff0c;终于找到一个&#xff0c;现在贡献出来与大家共享。WSL比起linux挂载硬盘简单一些。而且windows本身自己的硬盘位ntfs格式&#xff0c;所以…

win10子linux如何重置密码,Win10如何使用Windows PowerShell命令重置本地账户密码

在win10系统中&#xff0c;都自带有本地账户&#xff0c;为了安全也会给本地商户设置密码&#xff0c;不过使用一段时间之后&#xff0c;想要重置本地账户密码&#xff0c;但是很多用户并不知道要如何操作&#xff0c;其实我们可以使用Windows PowerShell命令方式来实现&#x…