随笔分类 - DataStructure
摘要:在上一篇博客里HashMap三百问,我们知道了很多关于HashMap的知识,我们也知道了HashMap是线程不安全的,在多线程环境中不建议使用,但是其线程不安全主要体现在什么地方呢? 这篇文章告诉你。 目录: 1.jdk1.7中的HashMap 1.1 扩容造成死循环分析过程 1.2 扩容造成数据丢
阅读全文
摘要:之前有写过HashMap的底层原理,今天再来写写线程安全的ConcurrentHashMap: 在回顾一下之前的知识点吧: HashMap : HashMap是线程不安全的,在并发环境下,可能会形成环状链表(扩容时可能造成,具体原因自行百度google或查看源码分析),导致get操作时,cpu空转,
阅读全文
摘要:红黑树算是很难的一种数据结构吧,一般很少考察插入、删除等具体操作步骤,如果遇到要你手写红黑树的面试官,就直接告辞吧。 所以,更多是会考察你对红黑树的理解程度,考察的最多的估计就是为什么有了二查找查找树/平衡树还需要红黑树这个问题了。 1、二叉查找树的缺点 二叉查找树的特点就是左子树的节点值比父亲节点
阅读全文
摘要:文章目录: 一、JDK1.7之HashMap 二、JDK1.8之HashMap 三、Hashtable JDK1.7之HashMap 1. 定义 HashMap实现了Map接口,继承AbstractMap。其中Map接口定义了键映射到值的规则,源码如下: HashMap是一种支持快速存取的数据结构。
阅读全文