このアルゴリズムは教科書で見つけましたが、よくわかりません。
TRANSPLANT(T,u,v){
1 if u.p == NIL
2 T.root = v
3 else if u == u.p.left
4 u.p.left=v
5 else u.p.right == v
6 if v != NIL
7 v.p=u.p
}
pまた、ノードの中には何が入っていると思いますか?
ノードとノードを単純に比較できないのはなぜですか?
教科書からのメモ:
サブツリーを二分探索ツリー内で移動するために、 サブルーチン を定義します。サブルーチン
TRANSPLANTは、あるサブツリーをその親の子として別のサブツリーに置き換えます。が node をルートとするサブツリーを node をルートとするサブツリーにTRANSPLANT置き換えるuと、 nodeuの親は node の親になり、 node の親は最終的uに適切な子になります。