%% 随机产生N个点
N = 5;
A = randint(N,2,[1 20]);
for p = 1:N
x = A(p,1);
y = A(p,2);
plot(x,y,'o');
hold on
text(x+0.5,y+0.5,num2str(p));
end
axis([0 30 0 30]);
axis equal
grid on
dd = pdist(A)';
mind = min(dd);
id = find(dd==mind);
ppp = [nchoosek(1:N,2) pdist(A)'];
for p = 1:length(id)
k = id(p);
ppp(k,:)
x1 = A(ppp(k,1),1);
y1 = A(ppp(k,1),2);
x2 = A(ppp(k,2),1);
y2 = A(ppp(k,2),2);
plot(x1,y1,'ro');
plot(x2,y2,'ro');
line([x1 x2],[y1 y2]);
text(x1+1,y1-1,['mind = ' num2str(dd(k))]);
end
hold off
追问![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/1f178a82b9014a9031ef4b8cac773912b31bee2a?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)
如果是这样的五个点呢,上一步得到了他们的坐标(plot_y(i),plot_x(i)),十分感谢!
追答A = [plot_x(:),plot_y(:)];
...