面试题:负载因子的大小,对hashmap有什么影响
- 负载因子的大小决定了hashmap的数据密度
- 负载因子如果太大的话,容易发生数据的碰撞,所链接的链表就会很长,每次插入或者查询的时候比较的次数就比较多,徒增功耗
- 负载因子如果太小的话,就容易出发扩容机制,所链接的链表就会缩短,数据碰撞就会减小,但是会浪费很多的空间和内存,经常的扩容就会浪费很多的性能,导致数组中很多的内存没有被填充就被扩容,最后导致浪费
- 按照其他的语言和统计学得出,一般的负载因子会设置在0.7到0.75的范围内,此时的检索长度更接近与常数