kmp
你的目光看海
这个作者很懒,什么都没留下…
展开
-
hud3336 kmp之对next数组的利用
链接:http://acm.hdu.edu.cn/showproblem.php?pid=3336题意:给一串字符串,问这串字符串所有的前缀总共在这个字符串中出现了几次。 举个例子:字符串abab。a出现了2次,a出现了2次,aba1次,abab1次,总共6次。 准备工作 : 解这道题就要对kmp算法中的next[] 数组有着深刻的理解,如字符串str的next[i] = j。就代表 str中原创 2016-08-05 11:41:57 · 365 阅读 · 0 评论 -
kmp模板
void makenext(const char *p , int *next) { int i=1,k=0; int m = strlen(p); next[0] = 0; for(i=1,k=0; i<m; i++) { while(k>0 && p[i]!=p[k]) k = next[k-1];原创 2017-03-01 22:42:41 · 243 阅读 · 0 评论