Triangulating a Polygon with Holes in Optimal (Deterministic) Time
Abstract
We consider the problem of triangulating a polygon with n vertices and h holes, or relatedly the problem of computing the trapezoidal decomposition of a collection of h disjoint simple polygonal chains with n vertices total. Clarkson, Cole, and Tarjan (1992) and Seidel (1991) gave randomized algorithms running in O(n*n + h h) time, while Bar-Yehuda and Chazelle (1994) described deterministic algorithms running in O(n+h1+h) or O((n+h h) h) time, for an arbitrarily small positive constant . No improvements have been reported since. We describe a new O(n + h h)-time algorithm, which is optimal and deterministic. More generally, when the given polygonal chains are not necessarily simple and may intersect each other, we show how to compute their trapezoidal decomposition (and in particular, compute all intersections) in optimal O(n + h h) deterministic time when the number of intersections is at most n1-. To obtain these results, Chazelle's linear-time algorithm for triangulating a simple polygon is used as a black box.
Turn this paper into a full lesson
ArcXiv compiles a staged curriculum from this paper: 8-12 lessons across beginner → advanced, synthesised section guides, visuals, flashcards, a quiz, exercises, and on-demand deep dives per section. Grounded in the abstract, never invented.