KMP 算法,该怎么处理
KMP 算法
在这个算法里有一点有点不明白,请各位大神具体请教一下
if(j==strlen(p)) // 这个与下面语句 是什么意思?
return i-strlen(p); // 这有什么作用?
------解决方案--------------------
这是我看到讲解KMP算法,最清晰详细的介绍,相信你一定能看懂
http://kb.cnblogs.com/page/176818/
在这个算法里有一点有点不明白,请各位大神具体请教一下
int KMPMatch(char *s,char *p)
{
int next[100];
int i,j;
i=0;
j=0;
getNext(p,next);
while(i<strlen(s))
{
if(j==-1||s[i]==p[j])
{
i++;
j++;
}
else
{
j=next[j]; //消除了指针i的回溯
}
if(j==strlen(p)) // 这个与下面语句 是什么意思?
return i-strlen(p); // 这有什么作用?
}
return -1;
}
if(j==strlen(p)) // 这个与下面语句 是什么意思?
return i-strlen(p); // 这有什么作用?
kmp
算法
------解决方案--------------------
这是我看到讲解KMP算法,最清晰详细的介绍,相信你一定能看懂
http://kb.cnblogs.com/page/176818/