好多书上讲的还不如博客的呢。
参考
1. http://jakeboxer.com/blog/2009/12/13/the-knuth-morris-pratt-algorithm-in-my-own-words/
2. 上一个的中文版本: http://blog.jobbole.com/39066/
这两个的关于部分匹配值 P[] 数组的理解非常好
3. http://www.matrix67.com/blog/archives/115
“其实,KMP的预处理本身就是一个B串“自我匹配”的过程”