33,009
社区成员
发帖
与我相关
我的任务
分享
void GetNext(SString S, int *next)
{
int i, j;
i = 1;
j = 0; //为什么初值是这样设置
next[1] = 0;
while (i<T[0])
{
if (j==0 || T[i]==T[j]) //什么时候j==0
{
++i;
++j;
next[i] = j;
}
else
j = next[j]; //这句更不明白了。。
}
}
KMP算法我懂了 next数组我自己在纸上也能求出来,可是就是这个函数不明白, 谁能帮我
c a b c a b c d
! !
j i