タグ

BM法に関するsalon_hiyakeのブックマーク (1)

  • 文字列検索(BM法)

    Boyer-Mooreのアルゴリズム BM法の原理 KMP法は『理論的には優れているが,実戦には弱い』 というアルゴリズム でした。 これに対して,BM法は『理論的にも優れていて,実戦にも強い』 と いう頼もしいアルゴリズムです。 実用的には,BM法は最も速い文字列探索ア ルゴリズムだということができます。パターンとテキストを重ね合わせて,末尾から先頭に向かって順番に文字を 比較していき,パターンとテキストの不一致が見つかったら,不一致の原因に なった文字に応じてパターンをずらす分量を決める,というのがBM法の考 え方です。 たとえば,左の図のようにテキストabdefghにパターンabcを重ね合わ せて比較することを考えましょう。 まずパターンの最後の文字をテキストと比 較します(左図(1))。 パターンの最後の文字はcで,対応するテキストは dになっています。

  • 1