arXiv · 2007.06604
Update Query Time Trade-off for dynamic Suffix Arrays
Abstract
The Suffix Array SA(S) of a string S[1 ... n] is an array containing all the suffixes of S sorted by lexicographic order. The suffix array is one of the most well known indexing data structures, and it functions as a key tool in many string algorithms. In this paper, we present a data structure for maintaining the Suffix Array of a dynamic string. For every $0 \leq \varepsilon \leq 1$, our data structure reports SA[i] in $\tilde{O}(n^{\varepsilon})$ time and handles text modification in $\tilde{O}(n^{1-\varepsilon})$ time. Additionally, our data structure enables the same query time for reporting iSA[i], with iSA being the Inverse Suffix Array of S[1 ... n]. Our data structure can be used to construct sub-linear dynamic variants of static strings algorithms or data structures that are based on the Suffix Array and the Inverse Suffix Array.
Explore related subjects
Keep this discovery
Amihood Amir, Itai Boneh. 2020-07-13. Update Query Time Trade-off for dynamic Suffix Arrays. https://arxiv.org/abs/2007.06604
Cite the original work for its findings. Save a collection to share your selection of sources.