【发布时间】:2011-02-23 04:09:28
【问题描述】:
我正在解决一些涉及 Rabin–Karp 字符串搜索算法的问题。该算法要求滚动哈希比简单搜索更快。 This article 描述了如何实现滚动哈希。我毫无问题地实现了“Rabin-Karp rolling hash”,发现很少有实现implementations,但文章还提到了计算复杂性,并且首选通过循环多项式对 n-gram 进行散列。它链接到 BuzHash 这种技术的实现,但我想知道如何使用它在其上构建 n-gram 哈希。我想要this 或
CPHash cp = new CPHash("efghijk");
cp.shiftRight('l') // now we got hash of "fghijki"
cp.shiftLeft('d') // "defghi"
对于java。
【问题讨论】:
-
你确定,你的例子是对的吗?我不这么认为。
标签: java algorithm hash string-matching rabin-karp