
HashMap原理
文章平均质量分 93
包括jdk1.7,红黑树,jdk1.8的HashMAp原理
面向c v编程
这个作者很懒,什么都没留下…
展开
-
Hashmap底层实现原理(JDK1.7)
在JDK1,7中,HashMap 数据结构为 数组+链表.三句话,说清它的数据结构:1.整体是一个数组;2.数组每个位置是一个链表;3.链表每个节点中的Value即我们存储的Object;初始化HashMap:提供了有参构造和无参构造:1.无参构造中,容器默认的数组大小 initialCapacity 为 16;2.,有参构造中,指定数组长度时,如果指定数组的长度为9,但是真正在初始化时创建数组的长度不是为9而是16。创建数组是在使用put方法时进行初始化创建。进入inflateTable(原创 2022-06-10 17:47:55 · 783 阅读 · 0 评论 -
Hashmap底层实现原理(JDK1.8)(AVL树简介.红黑树的原理)
在说jdk1.8的HashMap之前呢,我们先了解一下AVL树和红黑树:在计算机科学中,AVL树是最先发明的自平衡二叉查找树。在AVL树中任何节点的两个子树的高度最大差别为1,所以它也被称为高度平衡树。增加和删除可能需要通过一次或多次树旋转来重新平衡这个树。平衡二叉树递归定义如下:左右子树的高度差......原创 2022-06-17 17:39:07 · 769 阅读 · 0 评论 -
Hashmap底层实现原理(JDK1.8)
,HashMap 数据结构为 数组+链表+红黑树.因为当链表的长度特别长的时候,查询效率将直线下降,查询的时间复杂度为 O(n)。因此,JDK1.8 把它设计为达到一个特定的阈值之后,就将链表转化为红黑树。在这里我们就讲一下jdk1.7和1.8的HashMap的区别吧:首先就是hash()方法,1.7版本的hash()方法的散列...原创 2022-06-21 16:26:19 · 2384 阅读 · 0 评论