Dijkstra算法matlab代码

本文介绍了如何用MATLAB实现Dijkstra算法来求解最短路径问题,包括算法的伪代码解释和详细步骤。代码中包含了初始化图形、寻找最短路径和回溯输出等功能。
摘要由CSDN通过智能技术生成
 

:求解最短路径的Dijkstra算法

 

二:Dijkstra算法伪代码

      Vs(iN,2):  Vs(iN,1)==1表示顶点iN在集合Vs,Vs(iN,2)存储到iN最短距离。

      Ay(NN,NN):  领接矩阵存储边权。  不可行的路记为无穷大。

      By(NN,NN):  记录到顶点iN最短路径的前一个顶点。

Minp=0;  jn=0;

while (Vs(NN,1)==1)  %顶点jN表示末点。

     for (iN=1:NN)

         if (Vs(iN,1)==1)%从在集合Vs顶点中找出到外顶点的最短路。

              子函数:找出顶点iN 到外的最短路长与 顶点号[minp2,jN];

               If  Minp >minp2

                    Minp=minp2;

                    毁掉前记录,从新记录顶点jN与iNN;

               End

               If  Minp==minp2

                    Minp&

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值