标签: algorithm data-structures computational-geometry euclidean-distance
我正在寻找一种算法或数据结构来解决以下问题: 您会得到一组分数S。 然后,您会得到另一种形式的Q查询。 对于每个查询,从给定点中查找集合中最远的点。
集合中最多有10 ^ 5个点,而查询则有10 ^ 5个。点的所有坐标都在0到10 ^ 5之间。
我想知道是否有一种方法可以存储点集,以便我们可以根据需要在O(log n)或O(log ^ 2 n)中回答查询。
答案 0 :(得分:1)
引用“最远的邻居与应用程序” 到环形查询”:
在二维上最远的邻居问题 可以使用点位置在线性空间和对数查询时间内求解 最远的Voronoi图(例如,参见de Berg等[5])。
其中[5]是指“商标教科书”:
Berg,Mark de,Otfried Cheong,Marc van Kreveld和Mark Overmars。 计算几何:算法和应用。 Springer-Verlag TELOS,2008年。