A Simple Algorithm for Computing the Zone of a Line in an Arrangement of Lines
Symposium on Simplicity in Algorithms (SOSA)
Society for Industrial and Applied Mathematics
NSF, Division of Computing and Communication Foundations (CCF) 2005323
NSF, Division of Computing and Communication Foundations (CCF)
Let L be a set of n lines in the plane. The zone Z(ℓ) of a line ℓ in the arrangement A(L) of L is the set of faces of A(L) whose closure intersects ℓ. It is known that the combinatorial size of Z(ℓ) is O(n). Given L and ℓ, computing Z(ℓ) is a fundamental problem. Linear-time algorithms exist for computing Z(ℓ) if A(L) has already been built, but building A(L) takes O(n2) time. On the other hand, O(n log n)-time algorithms are also known for computing Z(ℓ) without relying on A(L), but these algorithms are relatively complicated. In this paper, we present a simple algorithm that can compute Z(ℓ) in O(n log n) time. More specifically, once the sorted list of the intersections between ℓ and the lines of L is known, the algorithm runs in O(n) time. A big advantage of our algorithm, which mainly involves a Graham's scan style procedure, is its simplicity.
Wang, Haitao, "A Simple Algorithm for Computing the Zone of a Line in an Arrangement of Lines" (2022). Computer Science Faculty and Staff Publications. Paper 39.