Logo image
Dynamic dictionary matching and compressed suffix trees
Conference paper   Open access

Dynamic dictionary matching and compressed suffix trees

Ho-Leung Chan, Wing-Kai Hon, Tak-Wah Lam and Kunihiko Sadakane
Proceedings of the Annual ACM-SIAM Symposium on Discrete Algorithms, pp.13-22
2005

Abstract

Recent breakthrough in compressed indexing data structures has reduced the space for indexing a text (or a collection of texts) of length n from O(n log n) bits to O(n) bits, while allowing very efficient pattern matching. Yet the compressed nature of such indices also makes them difficult to update dynamically. This paper presents the first O(n)-bit representation of a suffix tree for a dynamic collection of texts whose total length is n, which supports insertion and deletion of a text T in O(|T| log 2 n) time, as well as all suffix tree traversal operations, including forward and backward suffix links. This work can be regarded as a generalization of the compressed representation of static texts. Our new suffix tree representation serves as a core part in a compact solution for the dynamic dictionary matching problem, i.e., providing an O(d)-bit data structure for a dynamic collection of patterns of total length d that can support the dictionary matching query efficiently. When compared with the O(d log d)-bit suffix tree based solution of Amir et al., the compact solution increases the query time by roughly a factor of log d only. In the study of the above results, we also derive the first O(n)-bit representation for maintaining n pairs of balanced parentheses in O(log n/log log n) time per operation, matching the time complexity of the previous O(n log n)-bit solution.
pdf
Dynamic_dictionary_matching_and_compressed_suffix_trees.pdfDownloadView
Open Access

Related links

Metrics

1 Record Views

Details

Logo image