你还知道哪些哈希函数的构造方法呢?
HashMap 里哈希构造函数的方法叫:
- 除留取余法:
H(key)=key%p(p<=N)
,关键字除以一个不大于哈希表长度的正整数 p,所得余数为地址,当然 HashMap 里进行了优化改造,效率更高,散列也更均衡。
除此之外,还有这几种常见的哈希函数构造方法:
-
直接定址法
直接根据
key
来映射到对应的数组位置,例如 1232 放到下标 1232 的位置。 -
数字分析法
取
key
的某些数字(例如十位和百位)作为映射的位置 -
平方取中法
取
key
平方的中间几位作为映射的位置 -
折叠法
将
key
分割成位数相同的几段,然后把它们的叠加和作为映射的位置

THE END
暂无评论内容