Practical Entropy-Compressed Rank/Select Dictionary
Abstract
Rank/Select dictionaries are data structures for an ordered set $S \subset \{0,1,...,n-1\}$ to compute $\rank(x,S)$ (the number of elements in $S$ which are no greater than $x$), and $\select(i,S)$ (the $i$-th smallest element in $S$), which are the fundamental components of \emph{succinct data structures} of strings, trees, graphs, etc. In those data structures, however, only asymptotic behavior has been considered and their performance for real data is not satisfactory. In this paper, we propose novel four Rank/Select dictionaries, esp, recrank, vcode and sdarray, each of which is small if the number of elements in $S$ is small, and indeed close to $nH_0(S)$ ($H_0(S) \leq 1$ is the zero-th order \textit{empirical entropy} of $S$) in practice, and its query time is superior to the previous ones. Experimental results reveal the characteristics of our data structures and also show that these data structures are superior to existing implementations in both size and query time.
- Publication:
-
arXiv e-prints
- Pub Date:
- September 2006
- DOI:
- 10.48550/arXiv.cs/0610001
- arXiv:
- arXiv:cs/0610001
- Bibcode:
- 2006cs.......10001O
- Keywords:
-
- Computer Science - Data Structures and Algorithms