摘要: 在解上面这个问题前我们要先解决一个类似的问题:求字符串s的所有后缀和s本身的最长公共前缀;我们用next[]数组保存这些值;现在我们假设要求next[ x ],并且next[ i ] 0 L2 then 如下图: 表示s[0 .. L2-1] == s[x .. x+L2-1] 而且因为L2 = next[x-k]使得s[L2] != s[x+L2] 所以next[x] = L2; 证明:假设s[L2]==s[x+L2],又因为s[x+L2]==s[x-k+L2]//由1推出 所以s[L2]==s[x-k+L2] 所以next[x-k]==L2+1与next[x-k]==L2矛盾 1 void 阅读全文
posted @ 2013-06-26 21:59 Rabbit_hair 阅读(4323) 评论(0) 推荐(1)