Algorithm 如何查找位置点集是否包含距离大于1 km的点

Algorithm 如何查找位置点集是否包含距离大于1 km的点,algorithm,geolocation,distance,Algorithm,Geolocation,Distance,我有一组用户,每个用户都有一组由纬度和经度表示的点(n~5000)。 我需要找到静态用户。我所说的“静态”指的是没有相距超过1公里的点对的用户。最佳算法是什么?一组点中任何一对点之间的最大距离称为该组点的直径 下面是一个基于凸包的有效算法,用于解决此问题: 因为您可能不关心这里的精确性,所以只需找到所有点上的最小和最大纬度和经度,并测试由这些极值定义的框的一侧是否大于某个阈值,就更容易了。假设你不关心北极或南极附近的用户,这个方法就行了。Thx:)你能详细介绍一下第二个alg吗。我不确定

我有一组用户,每个用户都有一组由纬度和经度表示的点(n~5000)。
我需要找到静态用户。我所说的“静态”指的是没有相距超过1公里的点对的用户。最佳算法是什么?

一组点中任何一对点之间的最大距离称为该组点的直径

下面是一个基于凸包的有效算法,用于解决此问题:


因为您可能不关心这里的精确性,所以只需找到所有点上的最小和最大纬度和经度,并测试由这些极值定义的框的一侧是否大于某个阈值,就更容易了。假设你不关心北极或南极附近的用户,这个方法就行了。

Thx:)你能详细介绍一下第二个alg吗。我不确定我是否理解为什么计算长方体的侧面并假设它是一个很好的近似值是正确的……你的意思是我应该计算对角线吗?(我想不是,我只是想理解)好吧,正方形盒子的对角线是边长的2倍。所以假设你不关心50%左右的因素,那就没关系了。