Faster run-length compressed suffix arrays
Abstract
We first review how we can store a run-length compressed suffix array (RLCSA) for a text of length over an alphabet of size whose Burrows-Wheeler Transform (BWT) consists of runs in bits such that later, given character and the suffix array interval for , we can find the suffix-array (SA) interval for in time, where is the number of runs of copies of in the BWT. We then show how to modify the RLCSA such that we find the SA interval for in only time, without increasing its asymptotic space bound. Our key idea is applying a result by Nishimoto and Tabei (ICALP 2021) and then replacing rank queries on sparse bitvectors by a constant number of select queries. We also review two-level indexing and discuss how our faster RLCSA may be useful in improving it. Finally, we briefly discuss how two-level indexing may speed up a recent heuristic for finding maximal exact matches of a pattern with respect to an indexed text.
Keywords
Cite
@article{arxiv.2408.04537,
title = {Faster run-length compressed suffix arrays},
author = {Nathaniel K. Brown and Travis Gagie and Giovanni Manzini and Gonzalo Navarro and Marinella Sciortino},
journal= {arXiv preprint arXiv:2408.04537},
year = {2025}
}