Partial match retrieval in implicit data structures
Information Processing Letters
An implicit data structure supporting insertion, deletion, and search in O(log:OS2:OEn) time
Journal of Computer and System Sciences
Two algorithms for maintaining order in a list
STOC '87 Proceedings of the nineteenth annual ACM symposium on Theory of computing
The input/output complexity of sorting and related problems
Communications of the ACM
A tradeoff between search and update time for the implicit dictionary problem
Theoretical Computer Science - Thirteenth International Colloquim on Automata, Languages and Programming, Renne
A balanced search tree with O(1) worst case update time
Acta Informatica
A constant update time finger search tree
Information Processing Letters
The art of computer programming, volume 3: (2nd ed.) sorting and searching
The art of computer programming, volume 3: (2nd ed.) sorting and searching
Implicit Data Structures for the Dictionary Problem
Journal of the ACM (JACM)
Implicit dictionaries supporting searches and amortized updates in O(log n log log n) time
SODA '03 Proceedings of the fourteenth annual ACM-SIAM symposium on Discrete algorithms
Implicit B-Trees: New Results for the Dictionary Problem
FOCS '02 Proceedings of the 43rd Symposium on Foundations of Computer Science
A Sparse Table Implementation of Priority Queues
Proceedings of the 8th Colloquium on Automata, Languages and Programming
FOCS '99 Proceedings of the 40th Annual Symposium on Foundations of Computer Science
Implicit B-trees: a new data structure for the dictionary problem
Journal of Computer and System Sciences - Special issue on FOCS 2002
A Distribution-Sensitive Dictionary with Low Space Overhead
WADS '09 Proceedings of the 11th International Symposium on Algorithms and Data Structures
A distribution-sensitive dictionary with low space overhead
Journal of Discrete Algorithms
Hi-index | 0.00 |
The implicit dictionary problem is that of maintaining a dynamic ordered set, S, under the operations search, insert and delete, so that the elements of S are stored in the first |S| locations of an array. No operations are permitted on the data other than comparisons (≤) and interchanges. The only auxiliary memory permitted is a constant number of O(log |S|) bit integers. The organization will, then, rely heavily on the permutations of the relative order of the values in which the data is stored. While such a structure can be maintained in O(log |S|) time, the most interesting lower bound on the topic is that of Borodin, Fich, Meyer auf der Heide, Upfal and Wigderson [3]. They proved a tradeoff between search and update time in implicit dictionaries: if the update cost (comparisons and exchanges) is O(1), then the search cost must be Ω(|S|ε), for some constant ε 0. The authors left open the question of whether such a tradeoff would hold if only the modifications performed during an update were considered. They conjectured that any implicit dictionary performing only O(1) exchanges per update should very quickly become "disorganized", and so require Ω(|S|ε) comparisons per search. We answer this long-standing open question by disproving the conjecture.