Abstract
The problem of constructing the suffix tree of a common suffix tree (CS-tree) is a generalization of the problem of constructing the suffix tree of a string. It has many applications, such as in minimizing the size of sequential transducers and in tree pattern matching. The best-known algorithm for this problem is Breslauer’s O(n log |∑|) time algorithm where n is the size of the CS-tree and |∑| is the alphabet size, which requires O(n log n) time if |∑| is large. We improve this bound by giving an O(n log n) algorithm for integer alphabets. For trees called shallow k-ary trees, we give an optimal linear time algorithm. We also describe a new data structure, the Bsuffix tree, which enables efficient query for patterns of completely balanced k-ary trees from a k-ary tree or forest. We also propose an optimal O(n) algorithm for constructing the Bsuffix tree for integer alphabets.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
A. Apostolico and Z. Galil, eds., “Pattern Matching Algorithms”, Oxford University Press, New York, 1997.
D. Breslauer, “The Suffix Tree of a Tree and Minimizing Sequential Transducers,” J. Theoretical Computer Science, Vol. 191, 1998, pp. 131–144.
M. T. Chen and J. Seiferas, “Efficient and Elegant Subword Tree Construction,” A. Apostolico and Z. Galil, eds., Combinatorial Algorithms on Words, Chapter 12, NATO ASI Series F: Computer and System Sciences, 1985, pp. 97–107.
R. Cole, R. Hariharan and P. Indyk, “Tree Pattern Matching and Subset Matching in Deterministic O(n log3 n)-time,” Proc. 4th Symposium on Discrete Mathematics (SODA’ 99), 1999, pp. 245–254.
M. Farach, “Optimal Suffix Tree Construction with Large Alphabets,” Proc. 38th IEEE Symp. Foundations of Computer Science (FOCS’ 97), 1997, pp. 137–143.
M. Farach and S. Muthukrishnan, “Optimal Logarithmic Time Randomized Suffix Tree Construction,” Proc. 23rd International Colloquium on Automata Languages and Programming (ICALP’ 96), 1996, pp. 550–561.
R. Giancarlo, “The Suffix Tree of a Square Matrix, with Applications,” Proc. 4th Symposium on Discrete Mathematics (SODA’ 93), 1993, pp. 402–411.
D. Gusfield, “Algorithms on Strings, Trees, and Sequences: Computer Science and Computational Biology,” Cambridge University Press, 1997.
D. Harel and R. R. Tarjan, “Fast Algorithms for Finding Nearest Common Ancestors,” SIAM J. Computing, Vol. 13, 1984, pp. 338–355.
S. R. Kosaraju, “Efficient Tree Pattern Matching,” Proc. 30th IEEE Symp. Foundations of Computer Science (FOCS’ 89), 1989, pp. 178–183.
E. M. McCreight, “A Space-Economical Suffix Tree Construction Algorithm,” J. ACM, Vol. 23, 1976, pp. 262–272.
E. Ukkonen, “On-Line Construction of Suffix-Trees,” Algorithmica, Vol. 14, 1995, pp. 249–60.
P. Weiner, “Linear Pattern Matching Algorithms,” Proc. 14th Symposium on Switching and Automata Theory, 1973, pp. 1–11.
Author information
Authors and Affiliations
Rights and permissions
Copyright information
© 1999 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Shibuya, T. (1999). Constructing the Suffix Tree of a Tree with a Large Alphabet. In: Algorithms and Computation. ISAAC 1999. Lecture Notes in Computer Science, vol 1741. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-46632-0_24
Download citation
DOI: https://doi.org/10.1007/3-540-46632-0_24
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-66916-6
Online ISBN: 978-3-540-46632-1
eBook Packages: Springer Book Archive