开发者社区> 问答> 正文

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

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

展开
收起
蛮大人123 2016-06-07 15:25:35 7872 0
2 条回答
写回答
取消 提交回答
  • get()方法最好情况O(1),最差情况O(N),平均O(1)

    put()方法最好情况O(1),最差情况比较复杂,其中底层实现还涉及到map扩容

    2019-07-17 19:30:18
    赞同 展开评论 打赏
  • 我说我不帅他们就打我,还说我虚伪

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

    2019-07-17 19:30:18
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载
JAVA开发手册1.5.0 立即下载