|
|
1
4
第一:无法正确反转导致整数溢出的操作。基本上,问题是您无法知道整数溢出在前一个操作中是否发生过一次、两次甚至更频繁。因此您无法获得原件
第二:散列计算取决于应用的散列值的顺序。
由于追加最后一个值的散列值更改取决于所有以前的散列值,因此您不能只更改一个中间散列值,因此没有(性能良好)的方法来消除
如果您使用
|
|
|
2
3
基本上,当用整数进行计算时,需要进行2^32的算术模运算。所以在溢出的情况下,如果不是除以37,而是乘以它的模逆1857283155,它就会工作。例如,结果1:
第二个问题是,当您添加a然后添加b时,哈希值与添加b然后添加a时的值不同。这是无法用此哈希函数解决的。 |
|
|
user29759326 · 如何返回递归函数中的最后一个值? 1 年前 |
|
|
malife89 · 将java中的字符串读取为正确的日期格式 1 年前 |
|
|
Tim · 在java中,有没有更快的方法将字节数组写入文件? 1 年前 |
|
|
rudraraj · java中未声明最终变量 1 年前 |
|
|
Bala Ji · 以下BFS的实施效率如何? 1 年前 |