【C++】从零到一掌握红黑树:数据结构中的平衡之道-1 红黑树的概念

红黑树(Red-Black Tree)是一种自平衡二叉搜索树,通过对节点的颜色、结构及调整规则的约束,实现了树的动态平衡。它的主要目的是在插入、删除等操作后,保持树的高度尽可能小,从而保证在最坏情况下的时间复杂度为 ( O(\log N) )。

红黑树的五大性质

  1. 节点颜色:每个节点要么是红色,要么是黑色。
  2. 根节点黑色:根节点必须是黑色。
  3. 红色节点限制:红色节点的子节点必须是黑色(红色节点不能连续相邻,红黑交替)。
  4. 黑高相等:从任意节点到其每个叶子节点的路径中,包含相同数量的黑色节点。
  5. 叶子节点为黑色:所有的叶子节点(空节点)都被视为黑色。

在这里插入图片描述

上一篇:C/C++每日一练:删除链表的倒数第N个节点


下一篇:spark读取hbase数据