Suffix Tree of Alignment: An Efficient Index for Similar Data
Abstract
We consider an index data structure for similar strings. The generalized suffix tree can be a solution for this. The generalized suffix tree of two strings and is a compacted trie representing all suffixes in and . It has leaves and can be constructed in time. However, if the two strings are similar, the generalized suffix tree is not efficient because it does not exploit the similarity which is usually represented as an alignment of and . In this paper we propose a space/time-efficient suffix tree of alignment which wisely exploits the similarity in an alignment. Our suffix tree for an alignment of and has leaves where is the sum of the lengths of all parts of different from and is the sum of the lengths of some common parts of and . We did not compromise the pattern search to reduce the space. Our suffix tree can be searched for a pattern in time where is the number of occurrences of in and . We also present an efficient algorithm to construct the suffix tree of alignment. When the suffix tree is constructed from scratch, the algorithm requires time where is the sum of the lengths of other common substrings of and . When the suffix tree of is already given, it requires time.
Cite
@article{arxiv.1305.1744,
title = {Suffix Tree of Alignment: An Efficient Index for Similar Data},
author = {Joong Chae Na and Heejin Park and Maxime Crochemore and Jan Holub and Costas S. Iliopoulos and Laurent Mouchard and Kunsoo Park},
journal= {arXiv preprint arXiv:1305.1744},
year = {2013}
}
Comments
12 pages