标签: algorithm geolocation distance
我有一组用户,每个用户都有一组由纬度和经度表示的点(n~5000)。 我需要找到静态用户。通过静态'我的意思是没有超过1公里的点对的用户。什么是最好的算法?
答案 0 :(得分:2)
一组点中任意一对点之间的最大距离称为直径。
这是一种基于凸包的高效算法,用于解决这个问题:
由于你可能不关心这里的准确性,所以在所有点上找到最小和最大纬度和经度会更容易,并测试由这些极值定义的盒子的一侧是否大于某些阈。这可以假设您不关心北极或南极附近的用户。