0%

红黑树

红黑树

维基百科

红黑树的性质

  • 每个节点的颜色非红即黑
  • 根节点是黑色
  • 每个叶子节点(NIL)是黑色
  • 红色节点的子节点必黑
  • 对于每个节点,从它出发到每一个叶子节点路经上的黑色节点数量相同(忽略红色节点,黑色节点height平衡)

插入操作

  • 1.插入节点是根节点,将根节点变黑
  • 2.父节点是黑
  • 3.父节点是红,叔节点是红,将父,叔节点置黑,祖父节点置红,再判断祖父节点变红是否打破性质4
  • 4.父节点是红,叔节点是黑,父节点是祖父节点的左子节点,插入节点是父节点的左子节点,祖父节点右旋,P置黑,G置红
  • 5.父节点是红,叔节点是黑,父节点是祖父节点的左子节点,插入节点是父节点的右子节点,父节点左旋,然后转化成情形4
  • 6.父节点是红,叔节点是黑,父节点是祖父节点的右子节点,与情形4,5类似

删除操作