Article ID | Journal | Published Year | Pages | File Type |
---|---|---|---|---|
435399 | Theoretical Computer Science | 2009 | 9 Pages |
Operations rank and select over a sequence of symbols have many applications to the design of succinct and compressed data structures managing text collections, structured text, binary relations, trees, graphs, and so on. We are interested in the case where the collections can be updated via insertions and deletions of symbols. Two current solutions stand out as the best in the tradeoff of space versus time (when considering all the operations). One solution, by Mäkinen and Navarro, achieves compressed space (i.e., nH0+o(nlogσ) bits) and O(lognlogσ) worst-case time for all the operations, where n is the sequence length, σ is the alphabet size, and H0 is the zero-order entropy of the sequence. The other solution, by Lee and Park, achieves amortized time and uncompressed space, i.e. nlog2σ+O(n)+o(nlogσ) bits. In this paper we show that the best of both worlds can be achieved. We combine the solutions to obtain nH0+o(nlogσ) bits of space and worst-case time for all the operations. Apart from the best current solution to the problem, we obtain several byproducts of independent interest applicable to partial sums, text indexes, suffix arrays, the Burrows–Wheeler transform, and others.