在jdk7之前hashmap极端情况可能会出现这种情况:插入快,查询慢。所以其时间复杂度为O(N)
一、什么是红黑树
红黑结点自平衡二叉查找树。必须满足下面性质:
1、根节点、叶子节点(NIL)是黑色。
2、红结点的两个子结点一定是黑色
3、任意结点到每个叶子结点路径都包含数量相同黑结点
遍历规则:小中大,左中右
二、HashMap 怎么用红黑树
总结与调优:
为什么要设置阈值8?为什么开始链表,达到阈值才变红黑树?
鱼和熊掌不可兼得:
链表:插入快、查询慢 insert链表next引用即可
红黑树:查询快、插入慢 insert需要数据左右交换。
https://mp.weixin.qq.com/s/Um0yu5zUsAAZPqBAe3BYRQ