KMP主要应用在字符串匹配上。
KMP的主要思想是「当出现字符串不匹配时,可以知道一部分之前已经匹配的文本内容,可以利用这些信息避免从头再去做匹配了。」
next数组就是一个前缀表(prefix table)。
「前缀表是用来回溯的,它记录了模式串与主串(文本串)不匹配的时候,模式串应该从哪里开始重新匹配。」
「下表i之前(包括i)的字符串中,有多大长度的相同前缀后缀。」