网上很多的博客内容都大同小异,在此我仅列出几个在学习过程中很有帮助的博客。
http://jakeboxer.com/blog/2009/12/13/the-knuth-morris-pratt-algorithm-in-my-own-words/
对于next数组的求解,详细易懂,但与通用的求法略有不同(通用求法中,next[0]=-1, next[1]=0).
https://blog.csdn.net/suguoliang/article/details/77460455
next数组的求解过程也很详细。此外,对于理解前后缀,但是就是看不懂代码的问题,作者给出了图解。
https://www.cnblogs.com/yjiyjige/p/3263858.html
求next数组的算法应该是流传最广泛的,代码是很简洁。可是真的很让人摸不到头脑,它这样计算的依据到底是什么,本文作者给出了相应的解释。也提到了KMP的优化,但过程不够详细。
https://segmentfault.com/a/1190000008575379
主要参考next数组的代码分析。涉及到KMP的优化版本,并对未优化版本和优化版本的选择进行了说明。