我有一个数据集,其中包含美国 1000 个最大城市的经度和纬度。我正在设计一个 API,它返回用户最近的城市,给定用户的经度/纬度输入。
我可以用来计算最近城市的最有效算法是什么?我知道我可以使用 Haversine 公式来计算用户坐标与每个城市之间的距离,但是必须对所有 1000 个城市都这样做似乎效率低下。我以前使用 k-d 树来解决飞机上的最近邻问题 - 是否有类似的解决方案可以在地球环境中使用?