最短路径Dijkstra matlab
Posted wander-clouds
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了最短路径Dijkstra matlab相关的知识,希望对你有一定的参考价值。
Dijkstra:
function [dist,pre, full_path]=MinRoad_Dijkstra(G,v0) n=0; if isfield(G,‘w‘) && ~isempty(G.w) && size(G.w,1)==size(G.w,2) W=G.w;n=size(W,1); end dist=W(v0,:); pre=v0*ones(1,n); full_path=cell(1,n); for i=1:n if i~=v0 full_path{i}=v0; end end for k=2:n-1 for i=1:n for j=1:n if (j==i) continue; end d=dist(j)+W(j,i); if d<dist(i) dist(i)=d; pre(i)=j; full_path{i}=[full_path{j} j]; end end end end
以上是关于最短路径Dijkstra matlab的主要内容,如果未能解决你的问题,请参考以下文章