Abstract
We present the first adaptive data structure for two-dimensional orthogonal range search. Our data structure is adaptive in the sense that it gives improved search performance for data that is better than the worst case~teDemaine:Adaptive; in this case, data with more inherent sortedness. Given $n$ points on the plane, the linear-space data structure can answer range queries in $O(n+k+m)$ time, where $m$ is the number of points in the output and $k$ is the minimum number of monotonic chains into which the point set can be decomposed, which is $O(n)$ in the worst case. Our result matches the worst-case performance of other optimal-time linear-space data structures, or surpasses them when $k=o(n)$. Our data structure can be made implicit, requiring no extra space beyond that of the data points themselves~teMunro:Implicit, in which case the query time becomes $O(k log n + m)$. We also present a novel algorithm of independent interest to decompose a point set into a minimum number of untangled, similarly directed monotonic chains in $O(k^2n+n log n)$ time.
Original language | English |
---|---|
Journal | Theoretical Computer Science |
Volume | 412 |
Issue number | 32 |
Pages (from-to) | 4200-4211 |
Number of pages | 12 |
ISSN | 0304-3975 |
Publication status | Published - 2011 |
Externally published | Yes |
Keywords
- Adaptive
- Range search
- Range query
- Monotonic chain
- Untangling
- Implicit
- Data structure
- Computational geometry