java 平面上最近两个点之间的距离

public class ClosestPair{

public static void main(String[] args) {

float[][] a = new float[][]{{3, 3}, {1, 5}, {4, 6}, {2, 8}, {9, 9},{2, 1}, {7, 2}, {6, 5}, {9, 4}, {5, 9}};

float d = (float) 1e9;

for(int i=0; i<10; i++){

for(int j=i+1; j<10; j++){

float dx = a[i][0] - a[j][0];

float dy = a[i][1] - a[j][1];

d = min(d, Math.sqrt(dx*dx+dy*dy));

}

}

System.out.println(d);

}

private static float min(float d, double sqrt) {

return d = d>sqrt?d=(float) sqrt:d;

}

}

时间: 2024-12-20 01:17:51

java 平面上最近两个点之间的距离的相关文章

求二叉树的给定两个结点之间的距离

给定一颗二叉树,和两个给定的结点,求出这两个结点之间的距离 拿到题目时不要认为是求出二叉树的结点之间的最大距离,题目是求两个结点的之间的距离 题目有几种情况 两个结点分布在根节点的左子树或者右子树 一个结点分布在根节点的左子树,一个结点分布在根节点的右子树 这两个结点是兄弟结点 一个结点是另外结点的祖先结点 本题的解题思路是 利用层次遍历的方法,获取每个结点的高度,根节点左子树的高度用正数表示,根节点右子树的高度用负数表示 这样当两个结点分布在:一个结点分布在根节点的左子树,一个结点分布在根节点

计算两个经纬度之间的距离

//计算两个经纬度之间的距离 /** * 计算两点地理坐标之间的距离 * @param Decimal $longitude1 起点经度 * @param Decimal $latitude1 起点纬度 * @param Decimal $longitude2 终点经度 * @param Decimal $latitude2 终点纬度 * @param Int $unit 单位 1:米 2:公里 * @param Int $decimal 精度 保留小数位数 * @return Decimal

java多线程并发——Exchanger 两个任务之间交换对象

package org.rui.thread.newc; import java.util.List; import java.util.concurrent.CopyOnWriteArrayList; import java.util.concurrent.Exchanger; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurre

IOS 计算两个经纬度之间的距离

一 丶 -(double)distanceBetweenOrderBy:(double) lat1 :(double) lat2 :(double) lng1 :(double) lng2{ CLLocation *curLocation = [[CLLocation alloc] initWithLatitude:lat1 longitude:lng1]; CLLocation *otherLocation = [[CLLocation alloc] initWithLatitude:lat2

计算两个经纬度之间的距离(python算法)

EARTH_REDIUS = 6378.137 def rad(d): return d * pi / 180.0 def getDistance(lat1, lng1, lat2, lng2): radLat1 = rad(lat1) radLat2 = rad(lat2) a = radLat1 - radLat2 b = rad(lng1) - rad(lng2) s = 2 * math.asin(math.sqrt(math.pow(sin(a/2), 2) + cos(radLat1

PHP MYSQL 搜索周边坐标,并计算两个点之间的距离

搜索附近地点,例如,坐标(39.91, 116.37)附近500米内的人,首先算出“给定坐标附近500米”这个范围的坐标范围. 虽然它是个圆,但我们可以先求出该圆的外接正方形,然后拿正方形的经纬度范围去搜索数据库.红色部分为要求的搜索范围,绿色部分为实际搜索范围. /** * 获取周围坐标 * Enter description here ... * @param unknown_type $lng 固定坐标经度 * @param unknown_type $lat 固定坐标纬度 * @para

PHP计算两个坐标之间的距离

<?php /** * 计算两点之间的距离 * @param $lng1 经度1 * @param $lat1 纬度1 * @param $lng2 经度2 * @param $lat2 纬度2 * @param int $unit m,km * @param int $decimal 位数 * @return float */ function getDistance($lng1, $lat1, $lng2, $lat2, $unit = 2, $decimal = 2) { $EARTH_R

HDU1007(求最近两个点之间的距离)

一年前学长讲这题的时候,没听懂,自己搜解题报告也看不懂,放了一年.如今对分治和递归把握的比一年前更加熟悉,这题也就解决了. 题意:给你一堆点让你求最近两点之间距离的一半,如果用暴力的话O(n*n)明显会超时,那么我们就用分治思想,将所有点按照横坐标x排序,然后取中间的mid,分着求1-mid,mid-n,这样递归求解,递归只需要logn级别就可以完成递归,这有点类似二分思想. 1.我们取左边点对最小和右边点对最小比较,取最小的,记做d 2:但是最近点有可能一个点在左边,一个点在右边,所以要单独考

Java根据两点的经纬度来计算之间的距离

import java.util.HashMap; import java.util.Map; public class MapDistance { private static double EARTH_RADIUS = 6378.137; private static double rad(double d) { return d * Math.PI / 180.0; } /** * 根据两个位置的经纬度,来计算两地的距离(单位为KM) * 参数为String类型 * @param lat1