algorithm - 查找最近点对应于散点图中的给定点

标签 algorithm math geometry linear-algebra graph-algorithm

enter image description here

我将地址坐标(纬度、经度)的集合保存在数据库表中。

enter image description here

基于用户当前位置,例如用户位于 (55,65),应该有一个有效的算法来预测最近的地址对应于用户当前位置 (55,65),例如在这种情况下最近的地址是 Address13。 查找每个点的距离并不是有效的解决方案,因为地址数据可能会增长到数百万。

最佳答案

最好的办法是在数据集上实现一些最小生成树算法,然后在添加数据时向 MST 添加地址。 O(ElogV)

然后您将能够搜索每个节点的邻接列表以找到最近的节点,而不是搜索整个表。 O(E)

或者写一个搜索图的贪心算法。给它一个点和一个半径来观察,然后它就不会看 >radius 之外的点。

关于algorithm - 查找最近点对应于散点图中的给定点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44521137/

相关文章:

java - 在 jME 3 中将四边形添加到几何体时出现空指针异常

java - 了解加工过程中圆是如何形成的

java - 检查数组中的值是否对应于它的位置

java - 没有分区函数和最坏和最好情况的复杂性的快速排序

algorithm - 具有已知成本的 A* 算法

math - 什么是梯度方向和梯度大小?

python - Python脚本中数组数据转换的设计模式

python - 四舍五入到最接近的因素?

php - 在 PHP 中将混合分数字符串转换为 float

c# - 两条线之间的顺时针角度