Papers
Topics
Authors
Recent
Search
2000 character limit reached

Rank-Select Indices Without Tears

Published 7 Sep 2017 in cs.DS | (1709.02377v1)

Abstract: A rank-select index for a sequence $B=(b_1,\ldots,b_n)$ of $n$ bits is a data structure that, if provided with an operation to access $\Theta(\log n)$ arbitrary consecutive bits of $B$ in constant time (thus $B$ is stored outside of the data structure), can compute $\mathit{rank}B(j)=\sum{i=1}j b_i$ for given $j\in{0,\ldots,n}$ and $\mathit{select}B(k)=\min{j:\mathit{rank}_B(j)\ge k}$ for given $k\in{1,\ldots,\sum{i=1}n b_i}$. We describe a new rank-select index that, like previous rank-select indices, occupies $O(n\log\log n/\log n)$ bits and executes $\mathit{rank}$ and $\mathit{select}$ queries in constant time. Its derivation is intended to be particularly easy to follow and largely free of tedious low-level detail, its operations are given by straight-line code, and we show that it can be constructed in $O(n/\log n)$ time.

Citations (13)

Summary

Whiteboard

No one has generated a whiteboard explanation for this paper yet.

Open Problems

We haven't generated a list of open problems mentioned in this paper yet.

Continue Learning

We haven't generated follow-up questions for this paper yet.

Authors (2)

Collections

Sign up for free to add this paper to one or more collections.