Run Compressed Rank/Select for Large Alphabets
Abstract
Given a string of length that is composed of runs of letters from the alphabet such that , we describe a data structure that, provided , stores the string in bits and supports select and access queries in time and rank queries in time. We show that bits are necessary for any such data structure and, thus, our solution is succinct. We also describe a data structure that uses bits, where is an arbitrary constant, with the same query times but without the restriction . By simple reductions to the colored predecessor problem, we show that the query times are optimal in the important case , for an arbitrary constant . We implement our solution and compare it with the state of the art, showing that the closest competitors consume 31-46% more space.
Cite
@article{arxiv.1711.02910,
title = {Run Compressed Rank/Select for Large Alphabets},
author = {José Fuentes-Sepúlveda and Juha Kärkkäinen and Dmitry Kosolobov and Simon J. Puglisi},
journal= {arXiv preprint arXiv:1711.02910},
year = {2018}
}
Comments
This research has received funding from the European Union's Horizon 2020 research and innovation programme under the Marie Sklodowska-Curie Actions H2020-MSCA-RISE-2015 BIRDS GA No. 690941. 10 pages, 1 figure, 4 tables; published in DCC'2018