English

Computing Smallest Suffixient Arrays in Sublinear Time

Data Structures and Algorithms 2026-06-30 v1

Abstract

A suffixient array is a novel data structure that, when combined with an index providing direct access on a text TT, allows us to answer a variety of pattern matching queries. In this work, we show how to compute a smallest suffixient array for T[1n]T[1\dots n] in O(nlogσlogn+min(r,rˉ)logϵn)O(\frac{n\log \sigma}{\sqrt{\log n}}+\min(r,\bar{r})\log^\epsilon n) time for any ϵ>0\epsilon > 0, where σ\sigma is the alphabet size of TT and rr and rˉ\bar{r} are the numbers of equal-letter runs of the Burrows-Wheeler transforms of TT and its reverse T\overline{T}, respectively. This time complexity becomes sublinear when σ\sigma is small enough and min(r,rˉ)=o(nlogϵn)\min(r,\bar{r})=o(\frac{n}{\log^\epsilon n}), yielding an asymptotic improvement over state-of-the-art algorithms. We also present a series of connected algorithmic results.

Cite

@article{arxiv.2607.00204,
  title  = {Computing Smallest Suffixient Arrays in Sublinear Time},
  author = {Hiroto Fujimaru and Gonzalo Navarro and Francisco Olivares and Jakub Radoszewski and Giuseppe Romana and Cristian Urbina},
  journal= {arXiv preprint arXiv:2607.00204},
  year   = {2026}
}