【发布时间】:2017-04-30 14:54:35
【问题描述】:
是否有任何用于双向迭代器的 Knuth-Morris-Pratt 算法实现?在 Boost.Algorithm 中有随机访问迭代器的版本。
【问题讨论】:
-
我不确定是否可以有效地做到这一点。当我们没有转换时,我们需要在输入字符串上进行长时间的“跳转”。
-
它实际上是可行的(甚至还有一个纯函数式的线性时间实现),但它需要更多的内存。
-
我知道。但我没有找到任何关于它的文档。
-
好吧,你可以自己做。您只需要为模式中的所有
i存储下一个字符以及p[i]的值。 -
哦,怎么办?