红黑树规则

红黑树

性质

  1. 根节点都是黑色
  2. 红色节点的子节点必然是黑色
  3. 每个节点不是红色就是黑色
  4. 叶子节点都是黑色

旋转

旋转与颜色变换规则

  1. 所有插入的节点默认是红色

颜色变换

  1. 当前节点的父节点是红色 且 其祖父节点的另一个子节点(叔叔节点)也是红色
    • 将父节点和叔叔节点变成黑色 祖父节点变成红色 然后对祖父节点进行判断是否需要变换颜色或者旋转

旋转

  • 左旋
    • 当父节点是红色,叔叔节点是黑色,且当前节点是右节点时,对父节点进行左旋
    • 父节点变黑,祖父节点下沉变红
  • 右旋
    • 当父节点是红色,叔叔节点是黑色,且当前节点是左节点时,对祖父节点进行右旋
相关推荐
边境悍匪4 分钟前
蜗牛学苑 Java 智能体学习 Day39|SpringAI 会话存储、Function‑Call 工具调用、MCP 思维导图复盘
java·开发语言·spring boot·学习·阿里云
letisgo531 分钟前
JAVA 高级进阶02篇《并发编程三板斧:JMM、CAS与AQS的源码级拆解》
java·面试·并发编程·aqs·jmm
胡写代码35 分钟前
若依 + MyBatis-Plus,分页为什么悄悄失效了?
java·后端
yxlalm1 小时前
4.java秒杀项目第四课-后端商品后台接口
java·开发语言
宁之明起(B服)1 小时前
vulhub靶场(tomcat三件套:PUT写马、Ghostcat与manager弱口令)
java·tomcat
君顾11 小时前
家政派单小程序源码开发实战:从零搭建到上线全流程指南
java·开发语言·家政派单
流烟默1 小时前
HTTP 连接管理技术梳理:JDK KeepAliveCache 机制与池化选型
java·网络协议·http
阿酷tony1 小时前
视频专栏列表的防录屏水印和跑马灯效果(也可网站调用)
java·前端·音视频
洋不写bug2 小时前
排序(一)基础排序,插入|希尔|冒泡|直接选择排序详解
java·算法·排序算法·插入排序·冒泡排序·希尔排序·直接选择排序
xcl09252 小时前
全民健身智慧管理系统实战指南:从架构设计到部署落地
java·spring boot