Compact pat trees
Succinct indexable dictionaries with applications to encoding k-ary trees and multisets
SODA '02 Proceedings of the thirteenth annual ACM-SIAM symposium on Discrete algorithms
High-order entropy-compressed text indexes
SODA '03 Proceedings of the fourteenth annual ACM-SIAM symposium on Discrete algorithms
Low Redundancy in Static Dictionaries with O(1) Worst Case Lookup Time
ICAL '99 Proceedings of the 26th International Colloquium on Automata, Languages and Programming
Proceedings of the 16th Conference on Foundations of Software Technology and Theoretical Computer Science
Succinct representation of balanced parentheses, static trees and planar graphs
FOCS '97 Proceedings of the 38th Annual Symposium on Foundations of Computer Science
Journal of the ACM (JACM)
Rank/select operations on large alphabets: a tool for text indexing
SODA '06 Proceedings of the seventeenth annual ACM-SIAM symposium on Discrete algorithm
Space-efficient static trees and graphs
SFCS '89 Proceedings of the 30th Annual Symposium on Foundations of Computer Science
FOCS '08 Proceedings of the 2008 49th Annual IEEE Symposium on Foundations of Computer Science
Practical Rank/Select Queries over Arbitrary Sequences
SPIRE '08 Proceedings of the 15th International Symposium on String Processing and Information Retrieval
Broadword implementation of rank/select queries
WEA'08 Proceedings of the 7th international conference on Experimental algorithms
Optimal lower bounds for rank and select indexes
ICALP'06 Proceedings of the 33rd international conference on Automata, Languages and Programming - Volume Part I
CPM'12 Proceedings of the 23rd Annual conference on Combinatorial Pattern Matching
WABI'12 Proceedings of the 12th international conference on Algorithms in Bioinformatics
A Compressed Suffix Tree Based Implementation With Low Peak Memory Usage
Electronic Notes in Theoretical Computer Science (ENTCS)
Journal of Discrete Algorithms
Hi-index | 0.00 |
Rank and select queries on bitmaps are fundamental for the construction of a variety of compact data structures. Both can, in theory, be answered in constant time by spending o(n) extra bits on top of the original bitmap, of length n, or of a compressed version of it. However, while the solution for rank is indeed simple and practical, a similar result for select has been elusive, and practical compact data structure implementations avoid its use whenever possible. In addition, the overhead of the o(n) extra bits is in many cases very significant. In this paper we bridge the gap between theory and practice by presenting two structures, one using the bitmap in plain form and another using a compressed form, that are simple to implement and combine much lower space overheads than previous work with excellent time performance for rank and select queries. In particular, our structure for plain bitmaps is far smaller and faster for select than any previous structure, while competitive for rank with the best previous structures of similar size.