Home
Scholarly Works
A simple fast hybrid pattern-matching algorithm
Journal article

A simple fast hybrid pattern-matching algorithm

Abstract

The Knuth–Morris–Pratt (KMP) pattern-matching algorithm guarantees both independence from alphabet size and worst-case execution time linear in the pattern length; on the other hand, the Boyer–Moore (BM) algorithm provides near-optimal average-case and best-case behaviour, as well as executing very fast in practice. We describe a simple algorithm that employs the main ideas of KMP and BM (with a little help from Sunday) in an effort to combine these desirable features. Experiments indicate that in practice the new algorithm is among the fastest exact pattern-matching algorithms discovered to date, apparently dominant for alphabet size above 15–20.

Authors

Franek F; Jennings CG; Smyth WF

Journal

Journal of Discrete Algorithms, Vol. 5, No. 4, pp. 682–695

Publisher

Elsevier

Publication Date

January 1, 2007

DOI

10.1016/j.jda.2006.11.004

ISSN

1570-8667

Contact the Experts team