解决hash冲突方法

1 开放定址

1)线性  ( hash(key)+i) % L   

jdk threadlocalmap ThreadLocal内存泄漏问题实践(二)

原因:

----threadlocal冲突可能性低,threadlocal对象的hash:ThreadLocal内存泄漏问题实践(二)

----链表 、树删除性能低

 

2)二次. ( hash(key)+c1* i + c2 *i^2) % L

3)双重hash  ( hash1(key)+hash2(key)* i) % L

4)随机数列

2 链地址法  jdk hashmap

3 多次hash法,直到不重复

4 公共溢出区

 

https://cloud.tencent.com/developer/article/1361248

posted on 2019-11-11 17:17  silyvin  阅读(322)  评论(0编辑  收藏  举报