KMP算法

: 在本文中 ， 將使用始於零的數組來表示字符串 。 比如 ， 若字符串S = " ABC " ， 則S [ 2 ] 表示字符'C' 。 這種表示方法與C語言一致 。 在計算機科學中 ， Knuth - Morris - Pratt字符串查找算法 （ 簡稱爲KMP算法 ） 可在一個字符串S內查找一個 - { zh - hans: 詞; zh - hant: 字; } - W的出現位置 。 一個詞在不匹配時本身就包含足夠的信息來確定下一個匹配可能的開始位置 ， 此算法利用這一特性以避免重新檢查先前配對的字符 。 這個算法由高德納和在1974年構思 ， 同年也獨立地設計出該算法 ， 最終三人於1977年聯合發表 。