Rabin–Karp文字列検索アルゴリズムに関連するいくつかの問題を解決しています。このアルゴリズムでは、ローリングハッシュを単純な検索よりも高速にする必要があります。この記事では、ローリングハッシュを実装する方法について説明します。「ラビン-カープローリングハッシュ」を問題なく実装しましたが、実装の実装はほとんどありませんでしたが、計算の複雑さについても言及されており、循環多項式によるn-gramのハッシュが推奨されています。これは、そのような手法のBuzHash実装にリンクしていますが、その上にn-gramハッシュを構築するためにどのように使用できるのでしょうか。このようなものが欲しい、または
CPHash cp = new CPHash("efghijk");
cp.shiftRight('l') // now we got hash of "fghijki"
cp.shiftLeft('d') // "defghi"
Javaの場合。