TY - JOUR
T1 - The zooming method
T2 - a recursive approach to time-space efficient string-matching
AU - Ga̧sieniec, Leszek
AU - Plandowski, Wojciech
AU - Rytter, Wojciech
PY - 1995/8/7
Y1 - 1995/8/7
N2 - A new approach to time-space efficient string-matching is presented. The method is flexible, its implementation depends whether or not the alphabet is linearly ordered. The only known linear-time constant-space algorithm for string-matching over nonordered alphabets is the Galil-Seiferas algorithm, see Crochemore (1993) and Galil (1983) which are rather complicated. The zooming method gives probably the simplest string-matching algorithm working in constant space and linear time for nonordered alphabets. The novel feature of our algorithm is the application of the searching phase (which is usually simpler than preprocessing) in the preprocessing phase. The preprocessing has a recursive structure similar to selection in linear time, see Aho (1974). For ordered alphabets the preprocessing part is much simpler, its basic component is a simple and well-known algorithm for finding the maximal suffix, see Duval (1983). Hence we demonstrate a new application of this algorithm, see also Crochemore (1991). The idea of the zooming method was applied by Crochemore et al. (1995) to two-dimensional patterns.
AB - A new approach to time-space efficient string-matching is presented. The method is flexible, its implementation depends whether or not the alphabet is linearly ordered. The only known linear-time constant-space algorithm for string-matching over nonordered alphabets is the Galil-Seiferas algorithm, see Crochemore (1993) and Galil (1983) which are rather complicated. The zooming method gives probably the simplest string-matching algorithm working in constant space and linear time for nonordered alphabets. The novel feature of our algorithm is the application of the searching phase (which is usually simpler than preprocessing) in the preprocessing phase. The preprocessing has a recursive structure similar to selection in linear time, see Aho (1974). For ordered alphabets the preprocessing part is much simpler, its basic component is a simple and well-known algorithm for finding the maximal suffix, see Duval (1983). Hence we demonstrate a new application of this algorithm, see also Crochemore (1991). The idea of the zooming method was applied by Crochemore et al. (1995) to two-dimensional patterns.
UR - http://www.scopus.com/inward/record.url?scp=0012833684&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=0012833684&partnerID=8YFLogxK
U2 - 10.1016/0304-3975(94)00249-I
DO - 10.1016/0304-3975(94)00249-I
M3 - Article
AN - SCOPUS:0012833684
SN - 0304-3975
VL - 147
SP - 19
EP - 30
JO - Theoretical Computer Science
JF - Theoretical Computer Science
IS - 1-2
ER -