关注
HashMap中通过h&(length-1)的方法来代替取模
static int indexFor(int h, int length) { //根据hash值和数组长度算出索引值
return h & (length-1);
}
l
ength为2的整数次幂的话,h&(length-1)就相当于对length取模,这样便保证了散列的均匀,同时也提升了效率;其次,length为2的整数次幂的话,为偶数,这样length-1为奇数,奇数的最后一位是1,这样便保证了h&(length-1)的最后一位可能为0,也可能为1(这取决于h的值),即与后的结果可能为偶数,也可能为奇数,这样便可以保证散列的均匀性,而如果length为奇数的话,很明显length-1为偶数,它的最后一位是0,这样h&(length-1)的最后一位肯定为0,即只能为偶数,这样任何hash值都只会被散列到数组的偶数下标位置上,这便浪费了近一半的空间,因此,length取2的整数次幂,是为了使不同hash值发生碰撞的概率较小,这样就能使元素在哈希表中均匀地散列
查看原帖
5 7
相关推荐
点赞 评论 收藏
分享
11-14 08:35
河北地质大学华信学院 网络工程师 菜菜咪:1. 可以使用简历网站的模版,美观度会更好一点 2. 邮箱可以重新申请一个,或者用qq邮箱的别名,部分hr可能会不喜欢数字邮箱 3. 项目经历最好分点描述,类似的项目很多,可以参考一下别人怎么写的 4. 自我评价可加可不加,技术岗更看重技术。最后,加油,优秀士兵
点赞 评论 收藏
分享
牛客热帖
正在热议
# 拼多多求职进展汇总 #
240961次浏览 2051人参与
# 实习,投递多份简历没人回复怎么办 #
2448429次浏览 34804人参与
# 阿里云管培生offer #
65788次浏览 1769人参与
# 25届秋招总结 #
426826次浏览 4319人参与
# 虾皮求职进展汇总 #
101225次浏览 813人参与
# 地方国企笔面经互助 #
7432次浏览 18人参与
# 北方华创开奖 #
68099次浏览 558人参与
# ai智能作图 #
36035次浏览 442人参与
# 中兴求职进展汇总 #
471301次浏览 2453人参与
# 我在牛爱网找对象 #
75257次浏览 556人参与
# 双非有机会进大厂吗 #
106343次浏览 1335人参与
# 实习想申请秋招offer,能不能argue薪资 #
38148次浏览 313人参与
# 机械求职避坑tips #
24245次浏览 252人参与
# 发工资后,你做的第一件事是什么 #
10893次浏览 53人参与
# 25届机械人为了秋招做了哪些准备? #
26832次浏览 366人参与
# 投格力的你,拿到offer了吗? #
47942次浏览 337人参与
# 我的实习求职记录 #
6146747次浏览 84094人参与
# 投递实习岗位前的准备 #
1194010次浏览 18511人参与
# 机械人怎么评价今年的华为 #
158516次浏览 1354人参与
# 在职场上,你最讨厌什么样的同事 #
6503次浏览 98人参与
# 实习与准备秋招该如何平衡 #
726214次浏览 8569人参与
# 华为工作体验 #
112562次浏览 871人参与