已知平面上的若干点的位置,存入一个List中。现在需要计算所有这些点中,

距离最近的两个点间的最小距离。请补全缺失的代码。

把填空的答案(仅填空处的答案,不包括题面)存入考生文件夹下对应题号的“解答.txt”中即可。

/*

*/
import java.util.ArrayList;
import java.util.List;
class MyPoint{
private double x; // 横坐标
private double y; // 纵坐标
public MyPoint(double x, double y){
this.x = x;
this.y = y;
}
public static double distance(MyPoint p1, MyPoint p2){
double dx = p1.x - p2.x;
double dy = p1.y - p2.y;
return Math.sqrt(dx*dx + dy*dy);
}
/*
lst中含有若干个点的坐标
返回其中距离最小的点的距离
*/
public static double getMinDistance(List<MyPoint> lst){
if(lst==null || lst.size()<2) return Double.MAX_VALUE;
double r = Double.MAX_VALUE;
MyPoint p0 = lst.remove(0);
for(int i=0; i<lst.size(); i++){
MyPoint p = lst.get(i);
double d = MyPoint.distance(p0,p);
if(d<r) r = d; // 填空
}
double d2 = getMinDistance(lst);
return d2 < r ? d2 : r;
}
}
64
class Demo04{
public static void main(String[] args){
List<MyPoint> list = new ArrayList<MyPoint>() ;
list.add(new MyPoint(31,4));
list.add(new MyPoint(1,2));
list.add(new MyPoint(1,1));
list.add(new MyPoint(1,4));
System.out.println(MyPoint.getMinDistance(list));
}
}

运行结果:

1.0

最新文章

  1. NYOJ之水仙花数
  2. [MCSM] 蒙特卡罗统计方法
  3. VMware网络配置 - 三种网络模式简介
  4. Java实现九九乘法表的输出
  5. procedure can&#39;t return a result set in the given context
  6. Android 订阅-发布者模式-详解
  7. 《Linux系统静态路由和火墙路由》
  8. js读取json数据(php传值给js)
  9. SQLite入门与分析(一)---简介
  10. bss 概念
  11. hdu4710
  12. Latex 中插入图片no bounding box 解决方案
  13. 老李分享:loadrunner操作mysql数据库
  14. Lazyman功能实现
  15. 201521123002《Java程序设计》第11周学习总结
  16. 前端开发:如何写一手漂亮的 Vue
  17. The Euler function(线性筛欧拉函数)
  18. ATM程序设计
  19. 通过代码配置 Log4net来实现日志记录
  20. 斐波拉契数列(Fibonacci)--用生成器生成数列

热门文章

  1. mysql-kettle-superset电商可视化数据分析
  2. zabbix email报警
  3. 5.8 Go 单元测试
  4. Crystal | 水晶方法的七大特征,你了解吗?
  5. Oracle分页查询语句的写法
  6. hdu5967数学找规律+逆元
  7. 你以为只有马云会灌鸡汤?Linux 命令行也会!
  8. Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.26/images/j..........
  9. [wordpress使用]004_导入多媒体
  10. [PHP自动化-进阶]004.Snoopy VS CURL 模拟Discuz.net登陆