最近對問題(蠻力法)

2021-08-28 13:12:56 字數 481 閱讀 8427

問題描述:最近對問題是求解平面點集n個點中距離最近的兩個點間的問題。為簡單起見,在二維座標平面來考慮該問題。如果討論的點以標準二維座標形式給出,則有點pi(xi,yi)和pj(xj,yj),二者的兩點間距離可以利用公式d(pi,pj)=√(xj-xi)*(xj-xi)+(yj-yi)*(yj-yi)。通過這個公式,可以計算平面上任意兩點之間的距離。

因此,蠻力法求解思路就是對平面n個點兩兩組隊,計算並記錄最小距離。

public class zuijindui

}class aa;

int y=;

int i,j;

int n=x.length;

int ind1=0,ind2=0;

int dis;

int mind=9999;

void closepoint() {

for(i=0;i結果:

第乙個點的座標為:(2,1)

第二個點的座標為:(1,1)

最近點對(蠻力法)

include rand and srand include include sqrt include int max include define distance x1,y1,x2,y2 sqrt x1 x2 x1 x2 y1 y2 y1 y2 define max 10 生成點的個數 stru...

c 蠻力法求最近對問題

include include include using namespace std define m 10000 struct p 首先定義乙個結構體,結構體的內容為點的x,y值double closestpoints int n,p a,int index1,int index2 return...

C 用蠻力法與分治法解決最近對問題

設 p1 x1,y1 p2 x2,y2 pn xn,yn 是平面上n個點構成的集合s,最近對問題就是找出集合s中距離最近的點對。嚴格地講,最接近點對可能多於一對,簡單起見,只找出其中的一對即可。簡單起見,只考慮二維的情況並假設所討論的點以標準笛卡爾座標形式給出。因此,兩個點pi xi,yi 和pj ...