Static Dictionaries Supporting Rank

A static dictionary is a data structure for storing a subset S of a finite universe U so that membership queries can be answered efficiently. We explore space efficient structures to also find the rank of an element if found. We first give a representation of a static dictionary that takes n lg m + O(lg lg m) bits of space and supports membership and rank (of an element present in S) queries in constant time, where n = |S| and m = |U|. Using our structure we also give a representation of a m-ary cardinal tree with n nodes using n⌈lg m⌉ + 2n + o(n) bits of space that supports the tree navigational operations in O(1) time, when m is o(2lg n= lg lg n). For arbitrary m, we give a structure that takes the same space and supports all the navigational operations, except finding the child labeled i (for any i), in O(1) time. Finding the child labeled i in this structure takes O(lg lg lg m) time.

[1]  Amos Fiat,et al.  Nonoblivious hashing , 1992, JACM.

[2]  David R. Clark,et al.  Efficient suffix trees on secondary storage , 1996, SODA '96.

[3]  Erik D. Demaine,et al.  Representing Trees of Higer Degree , 1999, WADS.

[4]  Miklós Ajtai,et al.  A lower bound for finding predecessors in Yao's cell probe model , 1988, Comb..

[5]  Guy Jacobson,et al.  Space-efficient static trees and graphs , 1989, 30th Annual Symposium on Foundations of Computer Science.

[6]  Dan E. Willard,et al.  Log-logarithmic worst-case range queries are possible in space ⊕(N) , 1983 .

[7]  Zvi Galil,et al.  Proceedings of the 30th IEEE symposium on Foundations of computer science , 1994, FOCS 1994.

[8]  Rasmus Pagh,et al.  Low redundancy in dictionaries with O(1) worst case lookup time , 1998 .

[9]  Rasmus Pagh Low Redundancy in Static Dictionaries with O(1) Worst Case Lookup Time , 1999, ICALP.

[10]  J. Ian Munro,et al.  Membership in Constant Time and Almost-Minimum Space , 1999, SIAM J. Comput..

[11]  Dan E. Willard Log-Logarithmic Worst-Case Range Queries are Possible in Space Theta(N) , 1983, Inf. Process. Lett..

[12]  János Komlós,et al.  Storing a sparse table with O(1) worst case access time , 1982, 23rd Annual Symposium on Foundations of Computer Science (sfcs 1982).

[13]  Venkatesh Raman,et al.  Succinct representation of balanced parentheses, static trees and planar graphs , 1997, Proceedings 38th Annual Symposium on Foundations of Computer Science.

[14]  Amos Fiat,et al.  Non-oblivious hashing , 1988, STOC '88.

[15]  David Richard Clark,et al.  Compact pat trees , 1998 .

[16]  Jeanette P. Schmidt,et al.  The Spatial Complexity of Oblivious k-Probe Hash Functions , 2018, SIAM J. Comput..