From 56f7fb37207e41dca8cf3d8c653340b92b10bbe0 Mon Sep 17 00:00:00 2001 From: yangzhi <1564340114@qq.com> Date: Mon, 1 Mar 2021 11:36:32 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9C=AC=E5=9C=B0=E5=9B=BE=E7=89=87=E5=9C=B0?= =?UTF-8?q?=E5=9D=80=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- "docs/b-2Java\351\233\206\345\220\210.md" | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git "a/docs/b-2Java\351\233\206\345\220\210.md" "b/docs/b-2Java\351\233\206\345\220\210.md" index 844baf6..4041b0d 100755 --- "a/docs/b-2Java\351\233\206\345\220\210.md" +++ "b/docs/b-2Java\351\233\206\345\220\210.md" @@ -222,13 +222,13 @@ static int hash(int h) { 所谓 **“拉链法”** 就是:将链表和数组相结合。也就是说创建一个链表数组,数组中每一格就是一个链表。若遇到哈希冲突,则将冲突的值加到链表中即可。 -![jdk1.8之前的内部结构-HashMap](../../JavaGuide/docs/java/collection/images/jdk1.8之前的内部结构-HashMap.png) +![jdk1.8之前的内部结构-HashMap](images/jdk1.8之前的内部结构-HashMap.png) #### 2.2.8.2. JDK1.8 之后 相比于之前的版本, JDK1.8 之后在解决哈希冲突时有了较大的变化,当链表长度大于阈值(默认为 8)(将链表转换成红黑树前会判断,如果当前数组的长度小于 64,那么会选择先进行数组扩容,而不是转换为红黑树)时,将链表转化为红黑树,以减少搜索时间。 -![jdk1.8之后的内部结构-HashMap](../../JavaGuide/docs/java/collection/images/jdk1.8之后的内部结构-HashMap.png) +![jdk1.8之后的内部结构-HashMap](images/jdk1.8之后的内部结构-HashMap.png) > TreeMap、TreeSet 以及 JDK1.8 之后的 HashMap 底层都用到了红黑树。红黑树就是为了解决二叉查找树的缺陷,因为二叉查找树在某些情况下会退化成一个线性结构。