Given a set $P$ of $n$ points and a set $S$ of $n$ segments in the plane, we consider the problem of computing for each segment of $S$ its closest point in $P$. The previously best algorithm solves the problem in $n^{4/3}2^{O(\log^*n)}$ time [Bespamyatnikh, 2003] and a lower bound (under a somewhat restricted model) $\Omega(n^{4/3})$ has also been proved. In this paper, we present an $O(n^{4/3})$ time algorithm and thus solve the problem optimally (under the restricted model). In addition, we also present data structures for solving the online version of the problem, i.e., given a query segment (or a line as a special case), find its closest point in $P$. Our new results improve the previous work.
翻译:给定平面上的$n$个点集$P$和$n$条线段集$S$,我们考虑为$S$中每条线段计算其在$P$中的最近点问题。此前最优算法的时间复杂度为$n^{4/3}2^{O(\log^*n)}$ [Bespamyatnikh, 2003],且已证明下界为$\Omega(n^{4/3})$(在某种受限模型下)。本文提出$O(n^{4/3})$时间算法,从而在该受限模型下最优地解决了该问题。此外,我们还提出了解决在线版本问题的数据结构,即给定查询线段(或作为特例的直线),求其在$P$中的最近点。我们的新结果改进了此前的工作。