数据结构
TBS_Learner
萌新一个。在校大学生
展开
-
ConcurrentHashMap1.7源码 随笔
ConcurrentHashMap 快速导航ConcurrentHashMap实例化方法Map为Put而生扩容机制只有Put没有Get有何用?Remove还是需要的尾声不是总结的总结 实例化方法 在HashMap中, 主要有2个参数 一个 是 初始容量大小 , 一个是 负载因子 但是在ConcurrentHashMap中 , 还出现了另外一个 重要的 参数, 叫做 并发等级 在所有的构造方法中, 主要有2个构造方法, 一个是 具有3参数的 正常构造器, 一个是基于 Map的构造器 , 基于map原创 2020-05-09 15:29:50 · 148 阅读 · 0 评论 -
HashMap源码解析(JDK1.7)
HashMap源码解析(JDK1.7) 萌新的学习之路… 纯属以学习过程再现… 不存在那些大佬的 重点整理… 没有耐心的朋友~ 可以直接 阅读 HashMap 中的 一些小标题… 每个后面 都有小的总结… 可以直接看- - 有错误 请指出= =蟹蟹~ 快速导航HashMap源码解析(JDK1.7)HashMap层次结构图接口Map接口抽象类AbstractMapHashMap成员变量 / 常...原创 2020-05-04 22:12:38 · 97 阅读 · 0 评论 -
Stack源码解析(JDK1.7)
Stack源码解析(JDK1.7) 摸鱼摸鱼~! Stack的层次关系图 从层次图中看到… 所有的接口都在以前的博文中介绍过了… 这里还没有解析过的是 Vector (线程安全的列表类) Vector 我粗略的读了一下… 实现的方式几乎和 ArrayList 一模一样… 就是每个方法进行加锁… 这里就简单的把一些不一样的地方,有些重要的地方拿出来看一下… 构造方法 上 //构造方...原创 2020-05-03 14:42:42 · 97 阅读 · 0 评论 -
LinkedList 源码解析 JDK1.7
LinkedList 源码解析 JDK1.7 这是第二个java中通用的数据结构 这和之前的 ArrayList 中的很多 接口有相同的… 如果这里没有提及…可以去 https://blog.csdn.net/weixin_46592754/article/details/105866191 看一下 本文… 快速导航LinkedList 源码解析 JDK1.7LinkedList 层次结构接...原创 2020-05-01 13:27:56 · 120 阅读 · 0 评论 -
ArrayList 源码解析(JDK1.7)
ArrayList 源码解析(JDK1.7) ps: 我思考了一下…想要不要发这篇博客… 感觉作为一个初学者…发这种源码解析… 尤其当做学习记录这样的东西来做…感觉没有任何的重点可言… 不过思考了一下…反正估计也没人看 (狗头) 就发了吧 纯属个人 … emmm 萌新的学习经历- - 大伙凑着看看吧…如果有错 , 请指出… ArrayList的层次结构 接口 Iterable (可迭代的...原创 2020-04-30 17:28:43 · 111 阅读 · 0 评论 -
普通人都能看懂的图解---红黑树的删除
红黑树的删除 在上文中 . 我们已经介绍和演示了红黑树的插入 , 本文来 介绍一下 红黑树的 删除 以及 删除之后的调整 基于 我们对 AVL树的理解 , 用相同的方式 进行红黑树的删除分类 被删除的 节点 没有左右子树 被删除的 节点 只有左右子树的其中一个 被删除的 节点 同时拥有左右子树 在这3大类的情况下 , 红黑树 同时又比 不同的树 多了一个 颜色维度 , 所以 再次细分 红...原创 2020-04-25 13:42:06 · 227 阅读 · 0 评论 -
普通人都能看懂的图解---红黑树(插入)
红黑树的插入操作 红黑的简单介绍 : 首先它是一个相对平衡的搜索二叉树 在这样的基础之上, 又有这5个要求 性质1. 节点是红色或黑色。 性质2. 根节点是黑色。 性质3.所有叶子都是黑色。(叶子是NULL节点) 性质4. 每个红色节点的两个子节点都是黑色。(从每个叶子到根的所有路径上不能有两个连续的红色节点) 性质5… 从任一节点到其每个叶子的所有路径都包含相同数目的黑色节点。 与 ...原创 2020-04-23 13:42:16 · 237 阅读 · 0 评论 -
普通人都能看懂的图解---AVL树(删除)
多说无益! 直接看图 后文 会给出 Java 的代码实现 (完整代码 结合之前的插入) 代码实现 package structure.AVLTree; public class AVLTree { private TreeNode root = null; //根节点 public boolean add(int value) { return...原创 2020-04-21 22:47:48 · 215 阅读 · 0 评论 -
普通人都能看懂的图解---AVL树(插入)
多说无益! 直接看图 注意 : 在LR 和 RL的 两种情况中 紫色的三角形 高度 其实比 淡蓝色的 三角形 高度 高了1层 (需要想想) 后文 会给出 Java 的代码实现 ![AVL树的插入](https://img-blog.csdnimg.cn/20200421172036951.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5na...原创 2020-04-21 17:22:25 · 278 阅读 · 0 评论