knuth morris pratt算法中字符串中特定字符与字符串进行比较的最大次数是多少?

时间:2015-04-19 20:43:22

标签: string algorithm sorting knuth-morris-pratt

T:String
P:pattern

knuth morris pratt算法中字符串(T)中特定字符与模式(P)进行比较的最大次数是多少?

1 个答案:

答案 0 :(得分:0)

|P|。这是一个例子:

P = aaa...a(n times) T = aaa...a(n times)b

当我们到达b时,计数器的当前值为n。每次比较都会减少一个。因此,它会精确地进行n次迭代,直到达到零。

为什么它是上限?

很明显,比较次数最多为|P|(每次比较会使前缀函数的值减少至少一次,并且永远不会超过|P|)。