我一直在阅读有关 Knuth-Morris-Pratt 算法的 Wikipedia 文章,我对如何在跳转/部分匹配表中找到这些值感到困惑。
i | 0 1 2 3 4 5 6
W[i] | A B C D A B D
T[i] | -1 0 0 0 0 1 2
如果有人可以更清楚地解释捷径规则,因为这句话
“假设我们发现了一个适当的后缀,它是一个适当的前缀,以 W[2] 结尾,长度为 2(可能的最大值)”
令人困惑。如果正确的后缀以 W[2] 结尾,它的大小不是 3 吗?
另外我想知道为什么 T[4] 不是 1 当有大小为 1 的前缀和后缀时:A.
感谢您提供的任何帮助。