add by zhj: AVL树和红黑树都是平衡二叉树,虽然AVL树是最早发明的平衡二叉树,但直接把平衡二叉树等价于AVL树,我认为非常不合适。 但很多地方都在这么用。两者的比较如下 原文:https://blog.csdn.net/u010899985/article/details/809810 ...
分类:
其他好文 时间:
2019-07-12 09:48:58
阅读次数:
127
本文转自安卓大叔 写在前面 当在10亿数据中只需要进行10几次比较就能查找到目标时,不禁感叹编程之魅力!人类之伟大呀! —— 学红黑树有感。 终于,在学习了几天的红黑树相关的知识后,我想把我所学所想和所感分享给大家。红黑树是一种比较难的数据结构,要完全搞懂非常耗时耗力,红黑树怎么自平衡?什么时候需要 ...
分类:
其他好文 时间:
2019-07-11 12:45:16
阅读次数:
91
十分钟就要深入理解HashMap源码,看完你能懂?我觉得得再多看一分钟,才能完全掌握!终于来到比较复杂的HashMap,由于内部的变量,内部类,方法都比较多,没法像ArrayList那样直接平铺开来说,因此准备从几个具体的角度来切入。桶结构HashMap的每个存储位置,又叫做一个桶,当一个Key&Value进入map的时候,依据它的hash值分配一个桶来存储。看一下桶的定义:table就是
分类:
其他好文 时间:
2019-07-11 09:43:30
阅读次数:
103
红黑树 红黑树 红黑树是一种特定类型的二叉树,是在计算机科学中用到的一种数据结构,典型的用途是实现关联数组。它是在1972年由RudolfBayer发明的,他称之为"对称二叉B树",它现代的名字是在LeoJ.Guibas和RobertSedgewick于1978年写的一篇论文中获得的。它是复杂的,但 ...
分类:
其他好文 时间:
2019-07-05 18:03:34
阅读次数:
114
jdk1.8中红黑树的加入以及concurrentHashMap1、什么时HashMap? HashMap是一个用于储存Key-Value键值对的集合,每一个键值对也叫做Entry,这些个键值对(Entry)分散存储在一个数组中,这些数组就算是HashMap的主干,数组的每一个元素的初始值都是nul ...
分类:
其他好文 时间:
2019-07-03 20:00:14
阅读次数:
120
直接进入正题: 一、如何从数组生成一个二叉树 假设数组为:{ 30, 13, 7, 43, 23, 12, 9, 33, 42, 21, 18, 6, 3, 50 },我们不对数组排序,直接生成二叉树。 创建流程: 1.将第一数作为根节点: 2.插入13,13小于30,放在30的左边子节点。 3.插 ...
分类:
其他好文 时间:
2019-07-02 22:53:44
阅读次数:
206
红黑树是平衡二叉树的一种,基于二叉查找树。它由红色和黑色的节点组成。 调整红黑树的两种主要手法是变色和旋转。 红色树的主要特性有五个。 1.节点是红色或黑色 2.根结点是黑色的 3.每个叶节点都是黑色的空节点 4.每个红色节点的两个字节点都是黑色的(从叶子节点到根的所有路径上不存在两个连续的红色节点 ...
分类:
其他好文 时间:
2019-06-29 19:07:53
阅读次数:
100
红黑树规则: 1、根节点与叶节点都是黑色节点 2、每个红色节点的两个子节点都是黑色节点,反之,不做要求,换句话说就是不能有连续两个红色节点 3、从根节点到所有叶子节点上的黑色节点数量是相同的 一般对红黑树的讲述都是先给出这样的定义,这样想对不太容易理解的,而在算法4一书中,直接跳过这些规则,而讲述了 ...
分类:
编程语言 时间:
2019-06-29 14:56:19
阅读次数:
103
来来来,今天就跟hashmap杠到底。。。 不要叫我杠精了,主要是还是被问到hashmap的时候,我并不能很清晰明了得告知这种数据结构到底是一个什么构造,里面细节并不了解 既然这样,我们就把他解析一波,今天这篇也算是hashmap的收官之作了,主要用来红黑树部分我之前有博文写过,但是不用深究 自己实 ...
分类:
其他好文 时间:
2019-06-27 12:19:58
阅读次数:
102
ConcurrentHashMap原理和源码分析~~~~~~~~~~~~~~~~~~~~~
分类:
编程语言 时间:
2019-06-24 19:41:41
阅读次数:
133