【发布时间】:2013-02-06 20:25:39
【问题描述】:
我一直在阅读Wikipedia article about the Knuth-Morris-Pratt algorithm,我对如何在跳转/部分匹配表中找到这些值感到困惑。
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 吗?
我也想知道为什么当前缀和后缀大小为 1 时 T[4] 不是 1:A。
感谢您提供的任何帮助。
【问题讨论】:
标签: string algorithm string-matching knuth-morris-pratt