Encuentre el programa para encontrar el camino más corto de v1 a v8 usando los algoritmos de Dijkstra y Floyd en matlab. .
función?[?distancia,?ruta]?=?Dijkstra(?W,st,e?)?
n=longitud(W);
D?=?W(st,:);?
visita=?ones(1:n);?
visita(st)=0;?
padre?=?zeros(1,n);?
ruta?=[];?
for?i=1:n-1?
temp?=?[];?
para?j=1:n?
si?visita(j)?
temp?= [temp?D(j)];?
otro?
temp?=[temp?inf];?
fin
fin
[~, índice]?=?min(temp);?
visita(índice)?=?0;? para?k=1:n? p>
if?D(k)gt;D(índice) W(índice,k)?
D(k)?=?D(índice) W(índice,k);?
padre(k)?=?index;?
¿final?
final?
final?
distancia?=?D(e);
t?=?e;?
mientras?t~=st?amp;amp;?tgt;0?
ruta?=[t, ruta];?
p=parent(t);t=p;?
fin?
ruta ?=[st, ruta]; ruta más corta?
endW?=?[0310?Inf?Inf?Inf?Inf?Inf 30Inf?5Inf?Inf?Inf?Inf; ?Inf?Inf?Inf?Inf?5604Inf?Inf?Inf?10?5306; distancia, camino]=Dijkstra(W, 1, 8); ?distancia
distancia?=
23
gt;gt;? ruta
ruta?= 1?2?4?5?7?8