/* 深度解读KMP算法: 一个人能走的多远不在于他在顺境时能走的多快,而在于他在逆境时多久能找到曾经的自己。 -KMP KMP算法常用于字符串间的匹配问题 给定主串S和模式串P,S的长度为n,P的长度为m,在主串P中寻找模式串S出现的位置 (为方便理解S和P的下标均从1开始) 在解读KMP算法之前让我们先了解暴力枚举的做法: 依次枚举主串S中下标为1,2,3,...n-m+1的位置, 将其作为比较的起点依次与模式串P进行匹配, 若匹配成功则记录位置,匹配失败则换下一位进行匹配 在上述匹配过程中,每一次失败的匹配都没有为我们提供丝毫的经验, 我们还是如同第一次匹配一样去麻木的从下一位开始匹配,...