最長共通接頭辞(Z-Algorithm)

説明 ある文字列 $S$ が与えられているとする。Z-Algorithm では, それぞれの $i$ について $S$ と $S[i,|S|]$ の最長共通接頭辞の長さを記録した配列を線形時間で構築するアルゴリズムである。