An Ω(n log n) lower bound for decomposing a set of points into chains
Information Processing Letters
Adaptive set intersections, unions, and differences
SODA '00 Proceedings of the eleventh annual ACM-SIAM symposium on Discrete algorithms
Multidimensional binary search trees used for associative searching
Communications of the ACM
R-trees: a dynamic index structure for spatial searching
SIGMOD '84 Proceedings of the 1984 ACM SIGMOD international conference on Management of data
Approximating minimum cocolorings
Information Processing Letters
Optimal Dynamic Range Searching in Non-replicating Index Structures
ICDT '99 Proceedings of the 7th International Conference on Database Theory
The priority R-tree: A practically efficient and worst-case optimal R-tree
ACM Transactions on Algorithms (TALG)
A data structure for orthogonal range queries
SFCS '78 Proceedings of the 19th Annual Symposium on Foundations of Computer Science
On minimum k-modal partitions of permutations
Journal of Discrete Algorithms
Orthogonal range searching in linear and almost-linear space
Computational Geometry: Theory and Applications
Untangled Monotonic Chains and Adaptive Range Search
ISAAC '09 Proceedings of the 20th International Symposium on Algorithms and Computation
A comparative study of efficient algorithms for partitioning a sequence into monotone subsequences
TAMC'07 Proceedings of the 4th international conference on Theory and applications of models of computation
Range queries over untangled chains
SPIRE'10 Proceedings of the 17th international conference on String processing and information retrieval
On compressing permutations and adaptive sorting
Theoretical Computer Science
On the compression of search trees
Information Processing and Management: an International Journal
Hi-index | 5.23 |
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 (Demaine et al., 2000) [8]; 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(logn+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 (Munro and Suwanda, 1980) [16], in which case the query time becomes O(klogn+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+nlogn) time.