HashMap源码学习
HashMap源码学习
计忆芳华
一个2017年入坑的java小白。
个人博客:jiyifh.top。
展开
-
【红黑树学习-4】手写红黑树,红黑树源码解析
重点!!!说在前面,有同学反映 红黑树 测试 2,4,6,8,10,12,14…就不平衡了…这里说下原因:因为这是课程源码,考虑的并没那么多 我比对节点大小时 直接使用的是 node.key.compareTo(parent.key);明眼的同学都能看出来,这个其实是按照字符串比对的! 所以,大家尽量使用 a,b,c,d,e,f,g,h,i…这种风格去测试…或者自己改改这块的逻辑,可以去参考HashMap的实现去改。package com.study.struct;/** * Cl.原创 2020-07-16 20:53:41 · 234 阅读 · 0 评论 -
【红黑树学习-3】红黑树原理解析
红黑树的性质 红黑树的性质 红黑树示例图 性质1:每个节点要么是黑色,要么是红色。 性质2:根节点是黑色。 性质3:每个叶子节点(NIL)是黑色。 性质4:每个红色节点的两个子节点一定都是黑色。不能有两个红色节点相连。 性质5:任意一节点到每个叶子节点的路径都包含数量相同的黑结点。俗称:黑高!原创 2020-07-11 11:44:35 · 428 阅读 · 2 评论 -
【红黑树学习-2】二叉树原理解析
二叉树:树的每个节点最多只能有两个子节点。 图1 图2上图的第一幅图B节点有DEF三个子节点,就不是二叉树,称为多路树而第二幅图每个节点最多只有两个节点,是二叉树,并且二叉树的子节点称为“左子节点”和“右子节点”二叉搜索树如果我们给二叉树加一个额外的条件,就可以得到一种被称作二叉搜索树(binary search tree)的特殊二叉树。二叉搜索树要求:若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值;若它的右子树不空,则右子树上所有结点的值均大于.原创 2020-07-09 13:42:47 · 281 阅读 · 0 评论 -
【红黑树学习-1】树是什么?
什么是树?树(tree)是一种抽象数据类型(ADT),用来模拟具有树状结构性质的数据集合。它是由n(n>0)个有限节点通过连接它们的边组成一个具有层次关系的集合。把它叫做“树”是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。树有很多种,向上面的一个节点有多余两个的子节点的树,称为多路树,而每个节点最多只能有两个子节点的一种形式称为二叉树。 图1 图2①、节点:上图的圆圈,比如A,B,C等都是表示节点。节点一般代表一些实体,在java面向对象编程.原创 2020-07-09 13:30:19 · 226 阅读 · 0 评论 -
JAVA1.8 HashMap源码,句句注释,如果这样都看不懂HashMap源码,那你就真没救了
默认参数,构造方法//默认的table大小,左移4位等于16static final int DEFAULT_INITIAL_CAPACITY = 1 << 4; // aka 16//table最大长度static final int MAXIMUM_CAPACITY = 1 << 30;//默认的负载因子static final float DEFAULT_LOAD_FACTOR = 0.75f;//树化阈值,链表长度到达8static final int TRE原创 2020-07-07 22:00:10 · 441 阅读 · 0 评论 -
哈希,哈希函数,散列表,你知多少?
哈希,哈希函数,散列表,他们之间有密切的关系,但是很多不懂的小白会搞混他们分别是干什么的,下面分别说一下他们的作用和特点首先说的是哈希,哈希是密码学的基础,理解哈希是理解数字签名和加密通信等技术的必要前提。哈希,英文是 hash ,本来意思是”切碎并搅拌“,有一种食物就叫 Hash ,就是把食材切碎并搅拌一下做成的。哈希函数的运算结果就是哈希值,通常简称为哈希。哈希函数有时候也翻译做散列函数。用图来画一下哈希与哈希函数的关系那现在你大概的了解了哈希与哈希函数的关系,那么,哈希函数到底是做了什么.原创 2020-07-04 11:39:50 · 1269 阅读 · 0 评论 -
面试 百年老陈醋HashMap源码级分析
第一部分,基础入门:1.数组的优势/劣势优点:查询速度快,数组都是有下标的,我们可以通过inde快速访问到数据缺点:内存申请完后,大小固定了,在插入元素的时候,就插不进去了,就需要重新建立一个更大的数组,将原来数据全部复制过去,再插入数据,不太灵活,比较耗费性能。2.链表的优势/劣势优势:新插入一个元素,不用管理空间,直接头插或尾插缺点:查询一个元素,只能从头head元素一个一个查,删除某个元素也是非常费力气的。3.有没有一种方式整合两种数据结构的优势?有 散列表散列表(Hash原创 2020-07-08 17:08:42 · 245 阅读 · 0 评论