集合
文章平均质量分 75
业精勤而荒嬉
知其然知其所以然
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
TreeMap
需要先了解红黑树,这是之前分析红黑树的文章。之前在分析红黑树时,我认为红黑树=二叉查找树+红黑平衡,关于二叉查找树这是递归版本的,而在TreeMap中实现的是非递归版本的。TreeMap的继承关系:关于SortedMap,NavigableMapget与put操作都很简单,注意TreeMap不允许键为null,对TreeMap来说comparator不为null则利用该比较...原创 2018-07-05 13:52:00 · 2461 阅读 · 0 评论 -
LinkedHashMap源码解析(JDK8)
public class LinkedHashMap<K,V> extends HashMap<K,V> implements Map<K,V>LinkedHashMap 继承自 HashMap,在 HashMap 基础上,维护一条双向链表,保持遍历顺序和插入顺序一致。除此之外,LinkedHashMap 对访问顺序也提供了相关支持。在一些场景下,该特性很有...原创 2018-07-03 05:22:00 · 1117 阅读 · 0 评论 -
HashMap源码解析
HashMap系列文章:红黑树HashMap源码解析-红黑树操作LinkedHashMap源码解析(JDK8)HashMap底层数据结构:散列表+红黑树。关于散列表,采用拉链法处理hsah冲突,引入红黑树来提升效率。数组+链表+红黑树上图就是一个Node数组transient Node<K,V>[] table;每个黑点就是个Node ...原创 2018-05-22 00:12:00 · 510 阅读 · 0 评论 -
Map与AbstractMap
map是什么?键值对,key-value映射就是map。我们从三个角度分析:keyset,values,Entry。keysetkeyset是键key的Set集合,可以看出对于键map是不允许重复的,所以需要重写equals,hashCode方法,来保证正确的相等性比较。通过Map.keySet() 获取。valuesvalues是值Value的C...原创 2018-05-21 18:44:00 · 809 阅读 · 0 评论 -
HashMap的computeIfAbsent与computeIfPresent
LeetCode:49 Given an array of strings, group anagrams together.Example:Input: [“eat”, “tea”, “tan”, “ate”, “nat”, “bat”], Output: [ [“ate”,”eat”,”tea”], [“nat”,”tan”], [“bat”] ] Note...原创 2018-08-25 20:58:12 · 5682 阅读 · 0 评论 -
HashMap源码解析-红黑树操作
距离上一篇分析HashMap的文章已经过去一年了,今天偶尔翻到之前的那篇,还记得当时是打算另起一篇来分析链表的树化,以及树的链表化过程,结果这一拖就是一年原创 2019-06-23 10:58:56 · 1243 阅读 · 1 评论
分享