软件大赛题目----(第八个)求最短距离

来源:互联网 发布:ubuntu 好还是redhat 编辑:程序博客网 时间:2024/05/22 00:09





package com.bird.software;import java.util.List;/** *  * @author bird * */public 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);}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;}}


原创粉丝点击