首页 > 其他 > 详细

死磕HashMap

时间:2020-07-29 10:41:03      阅读:71      评论:0      收藏:0      [点我收藏+]

前言

    HashMap是Java中最常用的集合类框架,也是Java语言中非常典型的数据结构,同时也是我们需要掌握的数据结构,更重要的是进大厂面试必问之一。

    技术分享图片

 

 

数组特点

           存储区间是连续,且占用内存严重,空间复杂也很大,时间复杂为O(1)。

           优点:是随机读取效率很高,原因数组是连续(随机访问性强,查找速度快)。

           缺点:插入和删除数据效率低,因插入数据,这个位置后面的数据在内存中要往后移的,且大小固定不易动态扩展。

链表特点

         区间离散,占用内存宽松,空间复杂度小,时间复杂度O(N)。

         优点:插入删除速度快,内存利用率高,没有大小固定,扩展灵活。

        缺点:不能随机查找,每次都是从第一个开始遍历(查询效率低)。

哈希表特点

        以上数组和链表,大家都知道各自优缺点。那么我们能不能把以上两种结合一起使用,从而实现查询效率高和插入删除效率也高的数据结构呢?答案是可以滴,那就是哈希表可以满足,接下来我们一起复习HashMap中的put()和get()方法实现原理。

        技术分享图片

 

死磕HashMap

原文:https://www.cnblogs.com/lvqiansheng/p/13395205.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!