Matlab--最短路问题

该博客介绍了一个名为Dijkf_one的Matlab函数,用于解决图中的最短路问题。函数通过更新权值矩阵逐步找到从起点到其他顶点的最短路径,并记录顶点顺序和索引。此外,还提供了一个my_Dijkf函数,用于计算任意两个顶点之间的最短距离。博客中包含了函数的详细解释和示例输入,以便读者理解和应用。
摘要由CSDN通过智能技术生成
function [d index1 index2] = Dijkf_one(a)
%a表示图的权值矩阵
%d表示所求最短路的权和  (即最终结果为答案)
%index1表示标号顶点顺序(顶点先后求解出来的顺序)
%index2表示标号顶点索引(索引的答案可能不唯一)
%参数初始化

M=max(max(a));        %寻找一个矩阵中最大的数
pb(1:length(a))=0;    %记录是否判断历遍所有顶点,1为完成最优解,否则为0
pb(1)=1;              %第一个默认完成(0,0)
index1=1;             %(0,0,)是第一个求出来的顶点
index2=ones(1,length(a)); %开一个一维索引矩阵
d(1:length(a))=M;    %刚开始权和赋值无穷
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值