Linear Time Construction of Cover Suffix Tree and Applications
Abstract
The Cover Suffix Tree (CST) of a string is the suffix tree of with additional explicit nodes corresponding to halves of square substrings of . In the CST an explicit node corresponding to a substring of is annotated with two numbers: the number of non-overlapping consecutive occurrences of and the total number of positions in that are covered by occurrences of in . Kociumaka et al. (Algorithmica, 2015) have shown how to compute the CST of a length- string in time. We show how to compute the CST in time assuming that is over an integer alphabet. Kociumaka et al. (Algorithmica, 2015; Theor. Comput. Sci., 2018) have shown that knowing the CST of a length- string , one can compute a linear-sized representation of all seeds of as well as all shortest -partial covers and seeds in for a given in time. Thus our result implies linear-time algorithms computing these notions of quasiperiodicity. The resulting algorithm computing seeds is substantially different from the previous one (Kociumaka et al., SODA 2012, ACM Trans. Algorithms, 2020). Kociumaka et al. (Algorithmica, 2015) proposed an -time algorithm for computing a shortest -partial cover for each ; we improve this complexity to . Our results are based on a new characterization of consecutive overlapping occurrences of a substring of in terms of the set of runs (see Kolpakov and Kucherov, FOCS 1999) in . This new insight also leads to an -sized index for reporting overlapping consecutive occurrences of a given pattern of length in time, where is the number of occurrences reported. In comparison, a general index for reporting bounded-gap consecutive occurrences of Navarro and Thankachan (Theor. Comput. Sci., 2016) uses space.
Keywords
Cite
@article{arxiv.2308.04289,
title = {Linear Time Construction of Cover Suffix Tree and Applications},
author = {Jakub Radoszewski},
journal= {arXiv preprint arXiv:2308.04289},
year = {2023}
}
Comments
Accepted to ESA 2023. Abstract abridged to satisfy arxiv requirements