2 haveferrair HaveFerrair 于 2016.03.27 21:15 提问

Java HashMap的get(),put()算法时间复杂度

Java7和Java8的HashMap的put(),get()方法的时间复杂度是啥?还请从平均,最好,最坏的角度分析。谢谢

3个回答

caozhy
caozhy   Ds   Rxr 2016.03.27 22:25
已采纳

最优情况,hash不碰撞,O(1),典型情况,近似是O(1),因为几乎没有碰撞,最坏情况,O(N),也就是所有的hash都一样,那么退化为线性查找

wojiushiwo945you
wojiushiwo945you   Ds   Rxr 2016.03.27 21:27

hashmap的底层是两个数组,put最坏查找N次,get也是如此 。

love_register
love_register   2016.03.27 23:31

理想的是On,容量大小和分布是不是均匀都会有影响

love_register
love_register 理想O1,写错了
一年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!