这里t是要查找的子串,m是t串的长度。请问下kmp算法中next数组的含义是什么,以及下面这段代码的求法是否正确。
void getNext()
{
nxt[0] = 0;
int j = 0, i = 1;
while (i < m)
{
if (t[j] == t[i])
{
nxt[i] = ++j;
i++;
}
else if (j == 0)
{
nxt[i] = 0;
i++;
}
else
{
j = nxt[j - 1];
}
}
}