hash算法

xiaoxiao2025-08-11  27

算法目的

尽可能避免hash碰撞,减少重复的可能性,也就是数组可以更均匀的分配, 方式有两种

负载因子,如果是1,也就是数组完全占满了,才去扩容,这样数据只能落点到扩容前的某个槽,增加了hash碰撞的概率,而如果太小会浪费存储空间,所以就推算出了0.75这个加载因子hash算法,原生的hashcode()&数组的长度,参与运算的只有低位,重复的概率会很高,所以就优化重写了hashcode方法 key.hashcode() ^ key.hashcode() >>>16长度必须是2^n,也是增加散列的幅度

hash碰撞的解决方案

转载请注明原文地址: https://www.6miu.com/read-5034649.html

最新回复(0)