matlab求两组数据任意两点间最短距离及其坐标,要详细的matlab源码
展开全部
大概理解你的意思~~举例说明如下:
A = [ 1:3 ; 2:4 ]; %每个列向量为一个点,A有3个点,(1,2),(2,3),(3,4)
B = [ -4:-1 ; 0:3 ]; %B有4个点
[mA,nA] = size(A);
[mB,nB] = size(B);
for i = 1:nA
for j = 1:nB
D(i,j) = sqrt( sum((A(:,i)-B(:,j)).^2) ); %计算A与B各点距离
end
end
minvalue= min(min(D)); %距离最小值
[minrow,mincol] = find(D==mmin); %距离最小值的行列
A(:,minrow) %距离最小值的行对应的A中的点
B(:,mincol) %距离最小值的行对应的B中的点
满意就加分吧~
A = [ 1:3 ; 2:4 ]; %每个列向量为一个点,A有3个点,(1,2),(2,3),(3,4)
B = [ -4:-1 ; 0:3 ]; %B有4个点
[mA,nA] = size(A);
[mB,nB] = size(B);
for i = 1:nA
for j = 1:nB
D(i,j) = sqrt( sum((A(:,i)-B(:,j)).^2) ); %计算A与B各点距离
end
end
minvalue= min(min(D)); %距离最小值
[minrow,mincol] = find(D==mmin); %距离最小值的行列
A(:,minrow) %距离最小值的行对应的A中的点
B(:,mincol) %距离最小值的行对应的B中的点
满意就加分吧~
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询