TY - GEN

T1 - Online algorithms for constructing linear-size suffix trie

AU - Hendrian, Diptarama

AU - Takagi, Takuya

AU - Inenaga, Shunsuke

PY - 2019/6/1

Y1 - 2019/6/1

N2 - The suffix trees are fundamental data structures for various kinds of string processing. The suffix tree of a string T of length n has O(n) nodes and edges, and the string label of each edge is encoded by a pair of positions in T. Thus, even after the tree is built, the input text T needs to be kept stored and random access to T is still needed. The linear-size suffix tries (LSTs), proposed by Crochemore et al. [Linear-size suffix tries, TCS 638:171-178, 2016], are a “stand-alone” alternative to the suffix trees. Namely, the LST of a string T of length n occupies O(n) total space, and supports pattern matching and other tasks in the same efficiency as the suffix tree without the need to store the input text T. Crochemore et al. proposed an offline algorithm which transforms the suffix tree of T into the LST of T in O(nlog σ) time and O(n) space, where σ is the alphabet size. In this paper, we present two types of online algorithms which “directly” construct the LST, from right to left, and from left to right, without constructing the suffix tree as an intermediate structure. Both algorithms construct the LST incrementally when a new symbol is read, and do not access to the previously read symbols. The right-to-left construction algorithm works in O(nlog σ) time and O(n) space and the left-to-right construction algorithm works in O(n(log σ + log n/log log n)) time and O(n) space. The main feature of our algorithms is that the input text does not need to be stored.

AB - The suffix trees are fundamental data structures for various kinds of string processing. The suffix tree of a string T of length n has O(n) nodes and edges, and the string label of each edge is encoded by a pair of positions in T. Thus, even after the tree is built, the input text T needs to be kept stored and random access to T is still needed. The linear-size suffix tries (LSTs), proposed by Crochemore et al. [Linear-size suffix tries, TCS 638:171-178, 2016], are a “stand-alone” alternative to the suffix trees. Namely, the LST of a string T of length n occupies O(n) total space, and supports pattern matching and other tasks in the same efficiency as the suffix tree without the need to store the input text T. Crochemore et al. proposed an offline algorithm which transforms the suffix tree of T into the LST of T in O(nlog σ) time and O(n) space, where σ is the alphabet size. In this paper, we present two types of online algorithms which “directly” construct the LST, from right to left, and from left to right, without constructing the suffix tree as an intermediate structure. Both algorithms construct the LST incrementally when a new symbol is read, and do not access to the previously read symbols. The right-to-left construction algorithm works in O(nlog σ) time and O(n) space and the left-to-right construction algorithm works in O(n(log σ + log n/log log n)) time and O(n) space. The main feature of our algorithms is that the input text does not need to be stored.

UR - http://www.scopus.com/inward/record.url?scp=85068052163&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=85068052163&partnerID=8YFLogxK

U2 - 10.4230/LIPIcs.CPM.2019.30

DO - 10.4230/LIPIcs.CPM.2019.30

M3 - Conference contribution

AN - SCOPUS:85068052163

T3 - Leibniz International Proceedings in Informatics, LIPIcs

BT - 30th Annual Symposium on Combinatorial Pattern Matching, CPM 2019

A2 - Pisanti, Nadia

A2 - Pissis, Solon P.

PB - Schloss Dagstuhl- Leibniz-Zentrum fur Informatik GmbH, Dagstuhl Publishing

T2 - 30th Annual Symposium on Combinatorial Pattern Matching, CPM 2019

Y2 - 18 June 2019 through 20 June 2019

ER -