Matlab程序:
clc;clear;
a=[0 740 1300 780 1500
740 0 430 560 2000
1300 430 0 550 2200
780 560 550 0 200
1500 2000 2200 200 0];
result=[];p=1;tb=2:length(a);
while length(result)~=length(a)-1
temp=a(p,tb);temp=temp(:);
d=min(temp);
[jb,kb]=find(a(p,tb)==d);
j=p(jb(1));k=tb(kb(1));
result=[result,[j;k;d]];p=[p,k];tb(find(tb==k))=[];
end
result