Linear Pattern Matching of Repeated Substring s Alejandro Lopez-Orti z Department of Computer Scienc e University of Waterlo o Waterloo, Out . N2L 3G1 Canad a e-mail : alopez-o@maytag . UWaterloo .ca 1 Introductio n In 1970, Knuth, Morris, and Pratt proposed their famous linear-time pattern matchin g algorithm for two strings . Their algorithm was derived from a result of Cook that 2-wa y deterministic pushdown languages are recognizable on a RAM in linear time [Co71] . In 1973 , Weiner [PeWe73] presented a very original algorithm that performs linear time recognitio n of repeated instances of a substring in a string . Weiner's approach to this problem was a s important as the solution to the problem itself . The relevance of his work was immediately appreciated . The result was announced in October, 1973 at what was then SWAT (now FOCS) and some selected ideas made their way to Section 9 .5 of the first edition of Aho , Hoperoft and Ullman's textbook [AHU74], published half a year later . Unfortunately, Weiner's paper may be difficult for modern readers . Familiar object s such as trees and other data structures are described using notation drawn
/lp/association-for-computing-machinery/linear-pattern-matching-of-repeated-substrings-7f8iMZ22AB