Computational geometry: an introduction
Computational geometry: an introduction
Planar point location using persistent search trees
Communications of the ACM
Filtering search: a new approach to query answering
SIAM Journal on Computing
Two algorithms for maintaining order in a list
STOC '87 Proceedings of the nineteenth annual ACM symposium on Theory of computing
Fast algorithms for shortest paths in planar graphs, with applications
SIAM Journal on Computing
Making data structures persistent
Journal of Computer and System Sciences - 18th Annual ACM Symposium on Theory of Computing (STOC), May 28-30, 1986
Applications of random sampling in computational geometry, II
Discrete & Computational Geometry - Selected papers from the fourth ACM symposium on computational geometry, Univ. of Illinois, Urbana-Champaign, June 6 8, 1988
Triangulating a simple polygon in linear time
Discrete & Computational Geometry
Persistence, amortization and randomization
SODA '91 Proceedings of the second annual ACM-SIAM symposium on Discrete algorithms
Optimal binary space partitions for orthogonal objects
Journal of Algorithms
Surpassing the information theoretic bound with fusion trees
Journal of Computer and System Sciences - Special issue: papers from the 22nd ACM symposium on the theory of computing, May 14–16, 1990
Dynamic Perfect Hashing: Upper and Lower Bounds
SIAM Journal on Computing
Trans-dichotomous algorithms for minimum spanning trees and shortest paths
Journal of Computer and System Sciences - Special issue: 31st IEEE conference on foundations of computer science, Oct. 22–24, 1990
Two- and three-dimensional point location in rectangular subdivisions
Journal of Algorithms
Planar separators and parallel polygon triangulation
Journal of Computer and System Sciences - Special issue on selected papers presented at the 24th annual ACM symposium on the theory of computing (STOC '92)
Linear Algorithms for Partitioning Embedded Graphs of BoundedGenus
SIAM Journal on Discrete Mathematics
Internet packet filter management and rectangle geometry
SODA '01 Proceedings of the twelfth annual ACM-SIAM symposium on Discrete algorithms
Optimal static range reporting in one dimension
STOC '01 Proceedings of the thirty-third annual ACM symposium on Theory of computing
Toward optimal ε-Approximate nearest neighbor algorithms
Journal of Algorithms
Journal of Algorithms
Closest-point problems simplified on the RAM
SODA '02 Proceedings of the thirteenth annual ACM-SIAM symposium on Discrete algorithms
Optimal bounds for the predecessor problem and related problems
Journal of Computer and System Sciences - STOC 1999
Integer Sorting in 0(n sqrt (log log n)) Expected Time and Linear Space
FOCS '02 Proceedings of the 43rd Symposium on Foundations of Computer Science
Fully Persistent Arrays (Extended Array)
WADS '89 Proceedings of the Workshop on Algorithms and Data Structures
A Sparse Table Implementation of Priority Queues
Proceedings of the 8th Colloquium on Automata, Languages and Programming
Exponential Structures for Efficient Cache-Oblivious Algorithms
ICALP '02 Proceedings of the 29th International Colloquium on Automata, Languages and Programming
Two Simplified Algorithms for Maintaining Order in a List
ESA '02 Proceedings of the 10th Annual European Symposium on Algorithms
FOCS '98 Proceedings of the 39th Annual Symposium on Foundations of Computer Science
New data structures for orthogonal range searching
FOCS '00 Proceedings of the 41st Annual Symposium on Foundations of Computer Science
Maintaining order in a linked list
STOC '82 Proceedings of the fourteenth annual ACM symposium on Theory of computing
Scaling and related techniques for geometry problems
STOC '84 Proceedings of the sixteenth annual ACM symposium on Theory of computing
Faster deterministic sorting and searching in linear space
FOCS '96 Proceedings of the 37th Annual Symposium on Foundations of Computer Science
Deterministic sorting in O(nlog logn) time and linear space
Journal of Algorithms
Binary Space Partitions for Axis-Parallel Segments, Rectangles, and Hyperrectangles
Discrete & Computational Geometry
On dynamic range reporting in one dimension
Proceedings of the thirty-seventh annual ACM symposium on Theory of computing
Binary Space Partitions of Orthogonal Subdivisions
SIAM Journal on Computing
Time-space trade-offs for predecessor search
Proceedings of the thirty-eighth annual ACM symposium on Theory of computing
Dynamic ordered sets with exponential search trees
Journal of the ACM (JACM)
A data structure for multi-dimensional range reporting
SCG '07 Proceedings of the twenty-third annual symposium on Computational geometry
Computational Geometry: Algorithms and Applications
Computational Geometry: Algorithms and Applications
Binary Space Partitions for Axis-Aligned Fat Rectangles
SIAM Journal on Computing
ESA '08 Proceedings of the 16th annual European symposium on Algorithms
Introduction to Algorithms, Third Edition
Introduction to Algorithms, Third Edition
Transdichotomous Results in Computational Geometry, I: Point Location in Sublogarithmic Time
SIAM Journal on Computing
Orthogonal Range Reporting in Three and Higher Dimensions
FOCS '09 Proceedings of the 2009 50th Annual IEEE Symposium on Foundations of Computer Science
I/O-efficient point location in a set of rectangles
LATIN'08 Proceedings of the 8th Latin American conference on Theoretical informatics
Proceedings of the twenty-sixth annual symposium on Computational geometry
Counting inversions, offline orthogonal range counting, and related problems
SODA '10 Proceedings of the twenty-first annual ACM-SIAM symposium on Discrete Algorithms
Orthogonal range searching on the RAM, revisited
Proceedings of the twenty-seventh annual symposium on Computational geometry
Unifying the Landscape of Cell-Probe Lower Bounds
SIAM Journal on Computing
Hi-index | 0.00 |
We answer a basic data structuring question (e.g., raised by Dietz and Raman [1991]): Can van Emde Boas trees be made persistent, without changing their asymptotic query/update time? We present a (partially) persistent data structure that supports predecessor search in a set of integers in {1, ..., U} under an arbitrary sequence of n insertions and deletions, with O(log log U) expected query time and expected amortized update time, and O(n) space. The query bound is optimal in U for linear-space structures and improves previous near-O((log log U)2) methods. The same method solves a fundamental problem from computational geometry: point location in orthogonal planar subdivisions (where edges are vertical or horizontal). We obtain the first static data structure achieving O(log log U) worst-case query time and linear space. This result is again optimal in U for linear-space structures and improves the previous O((log log U)2) method by de Berg et al. [1995]. The same result also holds for higher-dimensional subdivisions that are orthogonal binary space partitions, and for certain nonorthogonal planar subdivisions such as triangulations without small angles. Many geometric applications follow, including improved query times for orthogonal range reporting for dimensions ≥ 3 on the RAM. Our key technique is an interesting new van-Emde-Boas--style recursion that alternates between two strategies, both quite simple.