PAMA: A fast string matching algorithm

被引:0
|
作者
Lu, SF [1 ]
Cao, F [1 ]
Lu, Y [1 ]
机构
[1] Wayne State Univ, Detroit, MI 48202 USA
关键词
D O I
10.1142/S0129054106003875
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
String matching is a fundamental operation in computer science, and its performance has great impact on many applications including database query, text processing, DNA and protein sequence analysis. In this paper, we propose a fast string matching algorithm, PAMA (PAttern MAtching). The shift rule used by PAMA not only subsumes both the bad character rule and the good suffix rule employed by the well-known Boyer-Moore algorithm, but also employs an additional key observation to enable faster shifting during the string matching process. Theoretically, we prove that from the same alignment, the next shift of PAMA will be at least as much as that of the Boyer-Moore algorithm. Experimentally, we show that PAMA indeed significantly outperforms the original Boyer-Moore algorithm in almost all cases, and outperforms other Boyer-Moore variants such as Tuned-BM, Turbo-BM and Horspool for long patterns (length >= 128) or for small alphabets (size < 8).
引用
下载
收藏
页码:357 / 378
页数:22
相关论文
共 50 条
  • [41] FAST STRING SEARCHING ALGORITHM
    BOYER, RS
    MOORE, JS
    COMMUNICATIONS OF THE ACM, 1977, 20 (10) : 762 - 772
  • [42] Simple optimal string matching algorithm
    Allauzen, C
    Raffinot, M
    JOURNAL OF ALGORITHMS-COGNITION INFORMATICS AND LOGIC, 2000, 36 (01): : 102 - 116
  • [43] The Parallel BMH Algorithm of String Matching
    Huang Kun
    Qu Xilong
    You Hong
    INFORMATION AND BUSINESS INTELLIGENCE, PT II, 2012, 268 : 136 - 141
  • [44] Parallelization of KMP String Matching Algorithm
    Alzoabi, Ubaid S.
    Alosaimi, Naser M.
    Bedaiwi, Abdullah S.
    Alabdullatif, Abdullatif M.
    WORLD CONGRESS ON COMPUTER & INFORMATION TECHNOLOGY (WCCIT 2013), 2013,
  • [45] A randomized algorithm for approximate string matching
    Atallah, MJ
    Chyzak, F
    Dumas, P
    ALGORITHMICA, 2001, 29 (03) : 468 - 486
  • [46] AN IMPROVED ALGORITHM FOR APPROXIMATE STRING MATCHING
    GALIL, Z
    PARK, K
    SIAM JOURNAL ON COMPUTING, 1990, 19 (06) : 989 - 999
  • [47] Hybrid string matching algorithm with a pivot
    Al-Ssulami, Abdulrakeeb M.
    JOURNAL OF INFORMATION SCIENCE, 2015, 41 (01) : 82 - 88
  • [48] FAST STRING SEARCHING ALGORITHM
    SORGEN, A
    SONDERGAARD, T
    COMMUNICATIONS OF THE ACM, 1979, 22 (12) : 679 - 679
  • [49] AN IMPROVED ALGORITHM FOR APPROXIMATE STRING MATCHING
    GALIL, Z
    PARK, K
    LECTURE NOTES IN COMPUTER SCIENCE, 1989, 372 : 394 - 404
  • [50] The wide window string matching algorithm
    He, LT
    Fang, BX
    Sui, J
    THEORETICAL COMPUTER SCIENCE, 2005, 332 (1-3) : 391 - 404