This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
38th Annual Symposium on Foundations of Computer Science (FOCS '97)
Optimal suffix tree construction with large alphabets
Miami Beach, FL
October 19-October 22
ISBN: 0-8186-8197-7
M. Farach, Dept. of Comput. Sci., Rutgers Univ., Piscataway, NJ, USA
The suffix tree of a string is the fundamental data structure of combinatorial pattern matching. Weiner (1973), who introduced the data structure, gave an O(n)-time algorithm for building the suffix tree of an n-character string drawn from a constant size alphabet. In the comparison model, there is a trivial /spl Omega/(n log n)-time lower bound based on sorting, and Weiner's algorithm matches this bound trivially. For integer alphabets, a substantial gap remains between the known upper and lower bounds, and closing this gap is the main open question in the construction of suffix trees. There is no super-linear lower bound, and the fastest known algorithm was the O(n log n) time comparison based algorithm. We settle this open problem by closing the gap: we build suffix trees in linear time for integer alphabet.
Index Terms:
pattern matching; suffix tree; large alphabets; data structure; combinatorial pattern matching; integer alphabet; sorting; integer alphabets
Citation:
M. Farach, "Optimal suffix tree construction with large alphabets," focs, pp.137, 38th Annual Symposium on Foundations of Computer Science (FOCS '97), 1997
Usage of this product signifies your acceptance of the Terms of Use.