java面试-0313-ThreadLocalMap怎么解决Hash冲突?如何计算hash?扩容机制?

开放定址法(线性探测):通过哈希值与数组长度-1与运算计算数组位置(等价取模运算),冲突则位置+1直到空槽或匹配键
哈希值从0每次递增 0x61c88647(斐波那契散列增量,基于黄金分割约1.618),确保哈希分布均匀,减少冲突

触发:元素数 ≥ 阈值(table.length * 2/3)时,调用 rehash() 清理过期 Entry,若仍超阈值(threshold - threshold/4),触发 resize():创建2倍容量新数组,遍历旧数组,重新计算哈希值(开放定址法),插入新数组,清理过期 Entry

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

编程岁月

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值