Lupkid 发表于 2007-10-19 15:30
求KMP完整程序(C或C++),头痛ing
求KMP完整程序(C或C++),头痛ing[em06]
Lupkid 发表于 2007-10-19 17:19
我主要是NEXT那数组不知怎么去用
zxc1998 发表于 2007-10-19 20:53
int Index_KMP(SString S,SString T,int pos,int next[])<BR> { // 利用模式串T的next函数求T在主串S中第pos个字符之后的位置的KMP算法。<BR> // 其中,T非空,1≤pos≤StrLength(S)。算法 4.6<BR> int i=pos,j=1;<BR> while(i<=S[0]&&j<=T[0])<BR> if(j==0||S[i]==T[j]) // 继续比较后继字符<BR> {<BR> ++i;<BR> ++j;<BR> }<BR> else // 模式串向右移动<BR> j=next[j];<BR> if(j>T[0]) // 匹配成功<BR> return i-T[0];<BR> else<BR> return 0;<BR> }
Lupkid 发表于 2007-10-19 21:27
谢谢,我的程序有问题,有空帮忙看看
页:
[1]