References & Citations
Computer Science > Computational Geometry
Title: Algorithms for Subpath Convex Hull Queries and Ray-Shooting Among Segments
(Submitted on 25 Feb 2020)
Abstract: In this paper, we first consider the subpath convex hull query problem: Given a simple path $\pi$ of $n$ vertices, preprocess it so that the convex hull of any query subpath of $\pi$ can be quickly obtained. Previously, Guibas, Hershberger, and Snoeyink [SODA 90'] proposed a data structure of $O(n)$ space and $O(\log n\log\log n)$ query time; reducing the query time to $O(\log n)$ increases the space to $O(n\log\log n)$. We present an improved result that uses $O(n)$ space while achieving $O(\log n)$ query time. Like the previous work, our query algorithm returns a compact interval tree representing the convex hull so that standard binary-search-based queries on the hull can be performed in $O(\log n)$ time each. Our new result leads to improvements for several other problems.
In particular, with the help of the above result, we present new algorithms for the ray-shooting problem among segments. Given a set of $n$ (possibly intersecting) line segments in the plane, preprocess it so that the first segment hit by a query ray can be quickly found. We give a data structure of $O(n\log n)$ space that can answer each query in $(\sqrt{n}\log n)$ time. If the segments are nonintersecting or if the segments are lines, then the space can be reduced to $O(n)$. All these are classical problems that have been studied extensively. Previously data structures of $\widetilde{O}(\sqrt{n})$ query time (the notation $\widetilde{O}$ suppresses a polylogarithmic factor) were known in early 1990s; nearly no progress has been made for over two decades. For all problems, our results provide improvements by reducing the space of the data structures by at least a logarithmic factor while the preprocessing and query times are the same as before or even better.
Link back to: arXiv, form interface, contact.