资源简介
对于K最短路问题,首先找出两点之间的所有路径,然后利用K最短路算法,将最短路、次短路、第三最短路等计算出来,存入数组中。该matlab程序具有很好的通用性,希望对大家有用。
说明:findpath.m文件可计算出任意两点的所有路径,dijstra.m可算出两点间的最短路,main.m为K最短路算法,文件夹中附有一张计算结果图!
代码片段和文件信息
function [minpath]=dijkstra(wstartterminal)
n=size(w1); label(start)=0; f(start)=start;
for i=1:n
if i~=start
label(i)=inf;
end
end
s(1)=start; u=start;
while length(s) for i=1:n
ins=0;
for j=1:length(s)
if i==s(j)
ins=1;
end
end
if ins==0
v=i;
if label(v)>(label(u)+w(uv))
label(v)=(label(u)+w(uv)); f(v)=u;
end
end
end
v1=0;
k=inf;
for i=1:n
ins=0;
for j=1:length(s)
if i==s(j)
ins=1;
end
end
if ins==0
v=i;
if k>label(v)
k=label(v); v1=v;
end
end
end
s(length(s)+1)=v1;
u=v1;
end
min=label(terminal); path(1)=terminal;
i=1;
while path(i)~=start
path(i+1)=f(path(i));
i=i+1 ;
end
path(i)=start;
L=length(path);
path=path(L:-1:1);
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2020 2016-05-26 11:35 k最短路程序\main.m
文件 982 2016-05-24 10:22 k最短路程序\dijkstra.m
文件 1854 2016-05-20 19:27 k最短路程序\findPath.m
文件 14350 2016-05-25 15:34 k最短路程序\计算结果.png
目录 0 2016-05-26 11:23 k最短路程序\
相关资源
- Pattern Recognition and Machine Learning(高清
- MATLAB 编程 第二版 Stephen J. Chapman 著
- 均值滤波和FFT频谱分析Matlab代码
- 《MATLAB扩展编程》代码
- HDB3码、AMI码的MATLAB实现
- 3点GPS定位MATLAB仿真
- MATLAB数字信号处理85个实用案例精讲入
- matlab从入门到精通pdf94795
- 欧拉放大论文及matlab代码
- 跳一跳辅助_matlab版本
- 全面详解LTE MATLAB建模、仿真与实现
- MIMO-OFDM无线通信技术及MATLAB实现_孙锴
- MATLAB Programming for Engineers 4th - Chapman
- matlab 各种谱分析对比
- 分数阶chen混沌matlab程序
- 基于粒子群算法的非合作博弈的matl
- MATLAB车流仿真 包括跟驰、延误
- matlab空间桁架计算程序
- 基于MATLAB的图像特征点匹配和筛选
- DMA-TVP-FAVAR
- GPS信号的码捕获matlab代码.7z
- 一维光子晶体MATLAB仿真代码吸收率折
- newmark法源程序
- 传统关联成像、计算鬼成像matlab
- pri传统分选算法
- 摆动滚子推杆盘形凸轮设计
- 医学图像重建作业matlab源码
- Matlab实现混沌系统的控制
- 检测疲劳驾驶
- Matlab锁相环仿真-Phase Locked Loop.rar
评论
共有 条评论