public class ZuiJinLJ {
public static void main(String[] args) {
Scanner cin=new Scanner(System.in);
System.out.println("请输入有几个点:");
int n=cin.nextInt();
double[] x=new double[n];
double[] y=new double[n];
for (int i = 0; i <n; i++) {
x[i]=cin.nextDouble();
y[i]=cin.nextDouble();
}
double d=0;
double min=200;
int i1=0,j1=0;
for (int i = 0; i <n ; i++) {
for (int j = 0; j <n ; j++) {
d=Math.sqrt((x[i]-x[j])*(x[i]-x[j])+(y[i]-y[j])*(y[i]-y[j]));
if(d<min&&d!=0)
{
min=d;
i1=i;
j1=j;
}
}
}
if(i1<j1)
{
System.out.println("closest point"+i1+" "+j1);
System.out.println(x[i1]+" "+y[i1]);
System.out.println(x[j1]+" "+y[j1]);
}
else{
System.out.println("closest point"+i1+" "+j1);
System.out.println(x[j1]+" "+y[j1]);
System.out.println(x[i1]+" "+y[i1]);
}
System.out.println(min);
}
}
搜狗校园面试题-最近邻居问题Java实现
最新推荐文章于 2022-07-29 17:21:49 发布