第一个直接问kmp就有点问题了。。还要深挖底层实现就不是很能理解