文字列マッチング
#Algorithm
#String
Abstract
Zアルゴリズム
で前処理をすることで, 文字列
$ T
を
$ S
とパターンマッチさせることができる.
Explanation
文字列
$ T
を
$ S
とパターンマッチさせるときは,
$ T
に含まれない文字を
$ \#
として, 連結した文字列
$ T \# S
に対して
Zアルゴリズム
を適用する.
$ Z[i] = |T|
となるインデックス
$ i > |T|
から始まる部分文字列の接頭辞が
$ T
と一致することがわかる.
References
Z Algorithm