%% ***************求图的两顶点间最短路与次短路*************** % 参数说明: // % W表示权值矩阵 // % p1,p2分别表示最短路与次短路 // % d1,d2分别表示两个路径p1,p2的长度 // %% function [p1 p2 d1 d2] = shorp2f(W) [p1 d1] = f_path(W); %求一条最短路 n = length(p1); d2 = inf; for i = 1:(n-1) A = W; A(p1(i),p1(i+1)) = inf; %删除最短路上一条边 A(p1(i+1),p1(i)) = inf; [m1 d] = f_path(A); %重新计算最短路 if d < d2 d2 = d; p2 = m1; end end