双重散列法处理冲突 double hash 是啥?
浏览量:4917
时间:2023-09-24 21:51:08
作者:采采
double hash 是啥?
双重哈希是开放寻址哈希表中的可以解决技术。护体哈希的思想是在不可能发生时对键做第二个哈希函数。
双重哈希可以不一次性处理:
(hash1(key)i*hash2(key))%TABLE_SIZE
这里hash1()、hash2()是hash函数,TABLE_SIZE是hash表大小
(如果没有突然发生,i趋近于接着再重复一遍运算)
简单通俗的二次Hash函数:hash2(key)PRIME–(key%PRIME)
PRIME一般中,选择小于等于TABLE_SIZE的质数
优质的二次Hash函数应该是拥有这些条件:
二次Hash函数结果不能为0
第二个哈希函数要可以遍布表的每一个单元
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。