-1

少し前に見つけたハッシュアルゴリズムがあり、小さなファイルに非常に役立ちました。メモリから、アルゴリズム自体は非常に単純でした。次のバイトでハッシュを追加し、固定数(おそらく33?)を掛けると、最後にビットシフトが発生しました。

疑似コードは次のようになります。

for each byte:
    x = nextbyte * 33
    hash += x
    hash <<= 4

このハッシュアルゴリズムの名前を知っている人はいますか?

4

1 に答える 1

3

Java ハッシュ コード アルゴリズムのように見えます。

public static int calculateHash(String input) {
    int h = 0;
    int len = input.length();
    for (int i = 0; i < len; i++) {
        h = 31 * h + input.charAt(i);
    }
    return h;
}

ただし、これが正しくない場合は、ハッシュ関数のリストをスクロールしてみてください

于 2012-08-15T12:05:41.520 に答える