(5)hashmap转红黑树(2)

在jdk7之前hashmap极端情况可能会出现这种情况:插入快,查询慢。所以其时间复杂度为O(N)

一、什么是红黑树

红黑结点自平衡二叉查找树。必须满足下面性质:

1、根节点、叶子节点(NIL)是黑色

2、红结点的两个子结点一定是黑色

3、任意结点到每个叶子结点路径都包含数量相同黑结点

遍历规则:小中大,左中右

二、HashMap 怎么用红黑树

总结与调优:

为什么要设置阈值8?为什么开始链表,达到阈值才变红黑树?

鱼和熊掌不可兼得:

链表:插入快、查询慢    insert链表next引用即可

红黑树:查询快、插入慢  insert需要数据左右交换。

https://mp.weixin.qq.com/s/Um0yu5zUsAAZPqBAe3BYRQ

推荐阅读更多精彩内容