我正在Algorithms princetion robert et al, ebook跟踪参考资料以学习算法。我无法弄清楚红黑树的删除任何帮助都会很棒。 这本书谈到了对应的编码删除,就像它在2-3棵树中所做的那样。我无法进行相关。谢谢
答案 0 :(得分:1)
参考维基百科,这里给出了详细的解释:
答案 1 :(得分:0)
Sedgewick的论文在我看来很漂亮:http://www.cs.princeton.edu/~rs/talks/LLRB/LLRB.pdf
删除背后的直觉是这样的:红黑树只是2-3-4树或2-3树的编码,具体取决于你如何实现它(红色链接用于构造3-和4节点使用普通的2节点)。在删除时,我们在向下的过程中执行旋转,以确保我们最终最终从叶子3节点或4节点删除目标(可以通过简单地删除目标元素来完成)。然后在返回树的路上可能会有一些修复轮换以恢复树不变量。
干杯!