【发布时间】:2016-06-07 14:55:53
【问题描述】:
我正在努力思考分治算法如何适用于大于 2 的维度,特别是如何找到两个子问题之间最接近的点对。
我知道我只需要考虑在x 轴上两者之间的分割距离d 内的点。
我知道在 3d 案例中,我只需要将每个点与其他 15 个点进行比较。
我不明白的是如何选择这 15 个点。在 2d 情况下,只需按y 值对值进行排序,然后按顺序遍历它们。然而,在 3d 情况下,每个点都需要与y 和 z 轴上最接近它的 15 个点进行比较。我似乎无法找到一种方法来确定这 15 个点是什么,而不是最坏的情况 O(n^2)...
我在这里错过了什么?
【问题讨论】:
标签: algorithm divide-and-conquer closest-points