![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
字符串算法
ParadiseHeaven
Learn to Think && Ask
展开
-
KMP算法理解
KMP算法: 字符串查找算法。在主串中是否包含模板串,如果包含,返回包含处的起始位置。 暴力匹配字符串时,是通过逐次比较来实现。主串str, 模板串ptr, 如果相同,返回起始位置,如果不相同,从主串的下一个位置开始重新比较。 KMP算法思想: 在遇到不匹配时,不再是单纯后移一位,而是充分利用ptr串的性质(eg.重复出现的字段), 可能一次跳跃多个位置再进行下一次比较,实现最大的移动量...原创 2017-11-18 08:45:53 · 499 阅读 · 0 评论 -
拓展kmp算法总结
算法总结第二弹,上次总结了下kmp,这次就来拓展kmp吧。 拓展kmp是对KMP算法的扩展,它解决如下问题: 定义母串S,和字串T,设S的长度为n,T的长度为m,求T与S的每一个后缀的最长公共前缀,也就是说,设extend数组,extend[i]表示T与S[i,n-1]的最长公共前缀,要求出所有extend[i](0<=i<n)。 注意到,如果有一个位置extend[i]=...转载 2017-12-11 19:32:56 · 238 阅读 · 0 评论