- 2
- 0
- 约2.42千字
- 约 22页
- 2017-08-20 发布于河南
- 举报
字符串匹配问题(本科生教材)
KMP算法;1、前缀函数;2、例2; c d a b a b a b a b ?; ? 当p.c[q]与t.c[j]不相等时,模式串p向右滑动多少个位置,再比较,既不丢失可能的匹配,又不做回溯?
以例2为例,展示匹配和滑动的过程!
1) 求p0,p1,…,pq-1中最大相同的前缀与后缀的长度k;
2) next[q]=k
即:
当p.c[q]与t.ch[j]不相等时,模式串p向右滑动q- k 个位置,继续比较p.c[q]和t.c[j]。;依次类推,直至出现下列两种情形之一。
(1) q退到某个next值,next[next…next[ ]]]时,比较i位置的字符,如相等,若此时若还不是完全匹配(q≠m),则q与j值各自增加1,继续比较下一字符
(2)如,k=-1时,模板退回到第1个位置、主串向前进一个,继续比较。
当算法中出现p.ch[q]=t.ch[i],且q=m时,显然找到了一个匹配p[0..m-1]=t[i-m..i-1]这是算法返回主串中出现匹配的第一个字符的位置i-m.;3、KMP算法;模板向后滑动 ;模板向后滑动 ;4、求前缀函数;由p的前缀函数的定义易知next[0]=-1 next[1]=0 。
用数学归纳法来计算前缀函数next的值:
对于
您可能关注的文档
最近下载
- 邓文迪的这张照片看哭了所有女性.pdf VIP
- 绿色设计产品评价技术规范 聚丙烯酰胺.pdf VIP
- 交叉口;交通问题;精细化设计;交通管理与控制;改善措施.doc VIP
- 新教材人教A版高中数学必修第2册教材课后习题答案.pdf
- 欢送会讲话稿.doc VIP
- 4-1应用写作技能与规范(学位论文).pdf VIP
- 4-2应用写作技能与规范(项目申报书).pdf VIP
- 老教师退休欢送会PPT.ppt VIP
- 专题10 读后续写提分赋能12个句型60例仿写(知识清单)(解析版)(全国通用)2026年高考英语一轮复习.docx
- 肝硬化门静脉高压症食管胃底静脉曲张破裂出血诊治共识解读PPT课件.pptx VIP
原创力文档

文档评论(0)