1维最近邻居的最佳数据结构

Muh*_*uri 9 algorithm data-structures

我有一个值列表(1维),我想知道最好的数据结构/算法,以找到最接近我的查询值.我在这里找到的大多数解决方案(全部?)是针对2个或更多维度的.任何人都可以向我建议我的案例方法吗?

我的直觉告诉我对数据进行排序并以某种方式使用二进制搜索.顺便说一句,对于所需的任何树的构造或插入时间没有限制,因此可能有人可以建议一个比简单的排序列表更好的树.

小智 9

如果你需要比O(log(n))更快的东西,你可以使用排序数组或二叉搜索树轻松获得,你可以使用van Emde Boas Tree.vEB树给你O(log(log(n)))来搜索任一边最近的元素.

  • 与排序数组相比,vEB树是一个复杂的空间猪.除非点非常密集,否则内存层次结构的影响可能会消除O(log n)和O(log log n)之间的理论差异,然后消除一些. (8认同)