面试-负载因子值大小,对HashMap影响

负载因子的大小决定了HashMap的数据密度。


负载因子越大数据密度越大,发生碰撞的机率越高,数组中的链表越容易长,造成查询或插入时的比较次数增多,性能会下降。
负载因子越小数据密度越小,发生碰撞的机率越小,数组中的链表也就越短,查询和插入时比较的次数也越小,性能会更高,就越容易触发扩容,会浪费一定的内存空间。经常扩容也会影响性能,建议初始化预设大一点的空间。


将负载因子设置为0.7~0.75,此时平均检索长度接近于常数。
 HASHmap很好的文章

https://blog.csdn.net/zhengwangzw/article/details/104889549?depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-4&utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-4

 

面试官: HashMap内部节点是有序的吗?

安琪拉: 是无序的,根据hash值随机插入

面试官: 那有没有有序的Map?

安琪拉: LinkedHashMap 和 TreeMap

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章