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 -