metlab最短路标号法代码及结果

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

MATLAB最短路-标号法代码函数代码function[min,path]=dijkstra(w,start,terminal)n=size(w,1);label(start)=0;f(start)=start;fori=1:nifi~=startlabel(i)=inf;end,ends(1)=start;u=start;whilelength(s)nfori=1:nins=0;forj=1:length(s)ifi==s(j)ins=1;end,endifins==0v=i;iflabel(v)(label(u)+w(u,v))label(v)=(label(u)+w(u,v));f(v)=u;end,end,endv1=0;k=inf;fori=1:nins=0;forj=1:length(s)ifi==s(j)ins=1;end,endifins==0v=i;ifklabel(v)k=label(v);v1=v;end,end,ends(length(s)+1)=v1;u=v1;endmin=label(terminal);path(1)=terminal;i=1;whilepath(i)~=startpath(i+1)=f(path(i));i=i+1;endpath(i)=start;L=length(path);path=path(L:-1:1);脚本代码weight=[035infinfinfinf;30inf2infinfinf;5inf01.54infinf;inf21.50inf3inf;infinf4inf00.53;infinfinf30.501.5;infinfinfinf31.5inf;];[dis,path]=dijkstra(weight,i,j)输出结果weight=[035infinfinfinf;30inf2infinfinf;5inf01.54infinf;inf21.50inf3inf;infinf4inf00.53;infinfinf30.501.5;infinfinfinf31.5inf;];[dis,path]=dijkstra(weight,1,4)dis=5path=124weight=[035infinfinfinf;30inf2infinfinf;5inf01.54infinf;inf21.50inf3inf;infinf4inf00.53;infinfinf30.501.5;infinfinfinf31.5inf;];[dis,path]=dijkstra(weight,1,5)dis=8.5000path=12465weight=[035infinfinfinf;30inf2infinfinf;5inf01.54infinf;inf21.50inf3inf;infinf4inf00.53;infinfinf30.501.5;infinfinfinf31.5inf;];[dis,path]=dijkstra(weight,1,7)dis=9.5000path=12467weight=[035infinfinfinf;30inf2infinfinf;5inf01.54infinf;inf21.50inf3inf;infinf4inf00.53;infinfinf30.501.5;infinfinfinf31.5inf;];[dis,path]=dijkstra(weight,4,5)dis=3.5000path=465weight=[035infinfinfinf;30inf2infinfinf;5inf01.54infinf;inf21.50inf3inf;infinf4inf00.53;infinfinf30.501.5;infinfinfinf31.5inf;];[dis,path]=dijkstra(weight,4,7)dis=4.5000path=467weight=[035infinfinfinf;30inf2infinfinf;5inf01.54infinf;inf21.50inf3inf;infinf4inf00.53;infinfinf30.501.5;infinfinfinf31.5inf;];[dis,path]=dijkstra(weight,5,7)dis=2path=567weight=[035infinfinfinf;30inf2infinfinf;5inf01.54infinf;inf21.50inf3inf;infinf4inf00.53;infinfinf30.501.5;infinfinfinf31.5inf;];[dis,path]=dijkstra(weight,7,1)dis=9.5000path=76421weight=[035infinfinfinf;30inf2infinfinf;5inf01.54infinf;inf21.50inf3inf;infinf4inf00.53;infinfinf30.501.5;infinfinfinf31.5inf;];[dis,path]=dijkstra(weight,5,1)dis=8.5000path=56421weight=[035infinfinfinf;30inf2infinfinf;5inf01.54infinf;inf21.50inf3inf;infinf4inf00.53;infinfinf30.501.5;infinfinfinf31.5inf;];[dis,path]=dijkstra(weight,4,1)dis=5path=421weight=[035infinfinfinf;30inf2infinfinf;5inf01.54infinf;inf21.50inf3inf;infinf4inf00.53;infinfinf30.501.5;infinfinfinf31.5inf;];[dis,path]=dijkstra(weight,5,4)dis=3.5000path=564weight=[035infinfinfinf;30inf2infinfinf;5inf01.54infinf;inf21.50inf3inf;infinf4inf00.53;infinfinf30.501.5;infinfinfinf31.5inf;];[dis,path]=dijkstra(weight,7,4)dis=4.5000path=764weight=[035infinfinfinf;30inf2infinfinf;5inf01.54infinf;inf21.50inf3inf;infinf4inf00.53;infinfinf30.501.5;infinfinfinf31.5inf;];[dis,path]=dijkstra(weight,7,5)dis=2path=765

1 / 4
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功