Introduction
Algorithms based on Automata
Also automata play a very important role in the design of efficient string matching algorithms. For instance, the Deterministic Finite Automaton Matcher [31] was one of the first linear-time solutions, whereas the Backward-DAWG-Matching algorithm [35] reached the optimal lower bound time complexity on the average. Both of them are based on finite automata; in particular, they respectively simulate a deterministic automaton for the language and the deterministic suffix automaton of the reverse of .
The efficiency of string matching algorithms depends on the underlying automaton used for recognizing the pattern and on the encoding used for simulating it.