2009年9月4日金曜日

left-leaning 赤黒木(red-black tree) - ノードの追加(黒ノードの左)

追加するノード○aが、ある末端の黒ノード●zより小さいか等しいとき(a≦z)を考えてみる。
※ a<z でもできるけれど、左ノードに追加した方が平衡に戻す操作が少くて済みそうなきがする。

実際に追加すると木は次の図になる。

新しく赤ノード○aが追加された木は、left-leaning 赤黒木の追加条件 6 も含めて赤黒木の条件を全て崩すことなく追加できた。