前段时间我遇到过一种哈希算法,它对小文件非常有用。从记忆中,算法本身非常简单。它涉及将散列与下一个字节相加并乘以某个固定数字(也许是 33?),然后最后有一个位移。
伪代码如下所示:
for each byte:
x = nextbyte * 33
hash += x
hash <<= 4
有人知道这个哈希算法的名字吗?
它看起来像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;
}
但如果这不是真的,请尝试滚动哈希函数列表