我有两组 2D 点,它们在平面上被一条线分开。我想有效地找到一对点,由每组中的一个点组成,它们之间的距离最小。Radu Litiu 有一篇非常方便的论文,最近对两个分离的点集,但它使用 L1(曼哈顿)距离度量而不是欧几里得距离。
有谁知道适用于欧几里得距离的类似算法?
我几乎可以看到标准分治最近对算法的扩展——将这两个集合除以垂直于原始分割线的中线,在两侧递归,然后寻找由一个点组成的更接近的对中位数的每一边。如果与递归步骤的最小距离为 d,则中值一侧的点的伴星必须位于尺寸为 2d*d 的框内。但与原始算法不同的是,我看不到任何方法来限制该框内的点数,因此整个算法就变成了 O(m*n)。
有任何想法吗?