Max-Shift BM and Max-Shift Horspool: Practical Fast Exact String Matching Algorithms

  • Sahli Mohammed
    Department of Computer Science, Graduate School of Information Science and Technology, The University of Tokyo
  • Shibuya Tetsuo
    Human Genome Center, Institute of Medical Science, The University of Tokyo

Search this article

Abstract

Exact string matching is the problem of finding all occurrences of a pattern P in a text T. The problem is well-known and many sophisticated algorithms have been proposed. Some fast exact string matching algorithms have been described since the 80s (e.g., the Boyer-Moore algorithm and its simplified version the Boyer-Moore-Horspool algorithm). They have been regarded as the standard benchmarks for the practical exact string search literature. In this paper, we propose two algorithms MSBM (Max-Shift BM) and MSH (Max-Shift BMH) both based on the combination of the bad-character rule of the right-most character used in the Boyer-Moore-Horspool algorithm, the extended bad-character rule and the good-suffix rule used in the Gusfield algorithm, which is a modification of the Boyer-Moore algorithm. Only a small extra space and preprocessing time are needed with respect to the BM and BMH algorithms. Nonetheless, empirical results on different data (DNA, Protein and Text Web) with different pattern lengths show that both MSBM and MSH are very fast in practice. MSBM algorithm usually won against other algorithms.

Journal

References(11)*help

See more

Related Projects

See more

Details 詳細情報について

Report a problem

Back to top