function [d,r]=floyd(a) 1 v% M/ I3 w4 p %floyd.m5 S! Z. I6 l+ i# S- L8 d7 u5 q
%采用floyd算法计算图a中每对顶点最短路 / A7 M$ x8 K7 y& m. f1 W/ j1 R %d是矩离矩阵 9 _" f0 a/ x: x$ S& U, K %r是路由矩阵 / {: F' G% g/ G/ C& a; Y" b5 C# K7 Z n=size(a,1);$ Y0 f( t- Z! I/ `: w/ H9 ?2 D
d=a; ; e, ^ w3 Z; ~1 I! j: H for i=1:n& e y9 d% {: U0 i/ p1 T
for j=1:n H7 \. X' Q% J3 ]' }/ z3 p1 u" U, z
r(i,j)=j; J& |" v% R6 m5 { o
end 0 w# ~5 m$ b5 B8 W! g% ~, I. H
end 0 ]# `, u9 P* K+ s
r 6 {. o: B v4 w" d for k=1:n 3 `- }1 q+ h' F+ @# p+ N for i=1:n ) ]. m5 ]2 p1 c1 K9 H5 M% [& D for j=1:n , s7 H/ K: Q/ H6 U5 `% t& s if d(i,j)>d(i,k)+d(k,j)& [" F* U! I, u) l6 m
d(i,j)=d(i,k)+d(k,j); 4 V* X4 I& }, o5 ^+ Q7 H; G { r(i,j)=r(i,k) 5 ~2 H$ N: m: M) C* U end ; z/ a+ i! S6 ^9 n end 4 {! Z0 L: f& q# H$ ^4 s: o end ) o8 e- M* K' d4 {( b k , Q1 A7 o7 X d8 s d 5 w b0 Y5 F# |1 g, T r1 [; T6 d8 R: |$ i$ K* c/ H7 I/ n
end/ V9 o, m* y6 O2 m
里面a指的是什么