KMP算法

前提:在字符串Q中找子串P

1.写出P的所有长度<P的子串
2.分别找出P的子串的最长公共前后缀(注意:前后缀不是回文)
3.求子串的前缀表prefix table,最前边补-1,然后逐次和子串元素对应
注:前缀表每项均+1即为next[]数组
4.从头进行比较,记录比较出错的位置的前缀表,把(数组下标==该前缀表元素)的数与出错位置对齐。
5.此后比较一旦出错,均采取步骤二的做法。

代码如下:




全部评论

相关推荐

11-02 09:49
已编辑
货拉拉_测试(实习员工)
热爱生活的仰泳鲈鱼求你们别卷了:没事楼主,有反转查看图片
点赞 评论 收藏
分享
offer多多的六边形战士很无语:看了你的博客,感觉挺不错的,可以把你的访问量和粉丝数在简历里提一下,闪光点(仅个人意见)
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务