Given two convex polygons $P$ and $Q$ with $n$ and $m$ edges, the maximum overlap problem is to find a translation of $P$ that maximizes the area of its intersection with $Q$. We give the first randomized algorithm for this problem with linear running time. Our result improves the previous two-and-a-half-decades-old algorithm by de Berg, Cheong, Devillers, van Kreveld, and Teillaud (1998), which ran in $O((n+m)\log(n+m))$ time, as well as multiple recent algorithms given for special cases of the problem.
翻译:给定两个分别具有 $n$ 和 $m$ 条边的凸多边形 $P$ 和 $Q$,最大重叠问题要求寻找 $P$ 的一个平移,使得其与 $Q$ 的交集面积最大化。本文给出了该问题首个具有线性运行时间的随机算法。我们的结果改进了 de Berg、Cheong、Devillers、van Kreveld 和 Teillaud(1998 年)提出的已有二十五年历史的算法(其运行时间为 $O((n+m)\log(n+m))$),同时也优于近期针对该问题特例提出的多个算法。