HashMap之Hash碰撞

碰撞的意思是计算得到的Hash值相同,需要放到同一个bucket中
Hashmap里面的bucket出现了单链表的形式,散列表要解决的一个问题就是散列值的冲突问题,通常是两种方法:链表法和开放地址法

链表法就是将相同hash值的对象组织成一个链表放在hash值对应的槽位;
开放地址法是通过一个探测算法,当某个槽位已经被占据的情况下继续查找下一个可以使用的槽位。

链表法

HashMap采用的链表法的方式,链表是单向链表。形成单链表的核心代码如下:



作者:Jacknolfskin
链接:https://www.jianshu.com/p/379680144004
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

发布了633 篇原创文章 · 获赞 627 · 访问量 137万+

猜你喜欢

转载自blog.csdn.net/czh500/article/details/105055006