RedBlack Trees:我试图了解redblack树中节点的删除?

时间:2013-06-30 09:39:22

标签: algorithm computer-science red-black-tree

我正在Algorithms princetion robert et al, ebook跟踪参考资料以学习算法。我无法弄清楚红黑树的删除任何帮助都会很棒。 这本书谈到了对应的编码删除,就像它在2-3棵树中所做的那样。我无法进行相关。谢谢

2 个答案:

答案 0 :(得分:1)

参考维基百科,这里给出了详细的解释:

http://en.wikipedia.org/wiki/Red%E2%80%93black_tree#Removal

答案 1 :(得分:0)

Sedgewick的论文在我看来很漂亮:http://www.cs.princeton.edu/~rs/talks/LLRB/LLRB.pdf

删除背后的直觉是这样的:红黑树只是2-3-4树或2-3树的编码,具体取决于你如何实现它(红色链接用于构造3-和4节点使用普通的2节点)。在删除时,我们在向下的过程中执行旋转,以确保我们最终最终从叶子3节点或4节点删除目标(可以通过简单地删除目标元素来完成)。然后在返回树的路上可能会有一些修复轮换以恢复树不变量。

干杯!