作业帮 > 综合 > 作业

matlab 或者C语言 问题

来源:学生作业帮 编辑:搜搜做题作业网作业帮 分类:综合作业 时间:2024/07/07 17:34:55
matlab 或者C语言 问题
matlab 或者C语言 编程 问题: 已知各个节点的坐标,已经节点连接所形成的线段(公路)---- 也就是给出路线图.(某个节点不一定和其他节点相连) 求某两点的最短走法的算法 .谢了啊
matlab 或者C语言 问题
Dikstra算法!这是一个经典的求最短路径算法!
再问: 就是不知道怎么编程 ,忘大侠 指点下。
再答: Dijkstra最短路算法通用Matlab程序 function [d,DD]=dijkstra(D,s) %Dijkstra最短路算法Matlab程序用于求从起始点s到其它各点的最短路 %D为赋权邻接矩阵 %d为s到其它各点最短路径的长度 %DD记载了最短路径生成树 D=[0,inf,5,30,inf,inf;2,0,inf,inf,8,inf;inf,15,0,inf,inf,7;inf,inf,inf,0,inf,inf;inf,inf,inf,4,0,inf;inf,inf,inf,10,18,0]; [m,n]=size(D); d=inf.*ones(1,m); d(1,s)=0; dd=zeros(1,m); dd(1,s)=1; y=s; DD=zeros(m,m); DD(y,y)=1; counter=1; while length(find(dd==1))