挿入および削除ノードは赤黒木を扱います

赤黒木の挿入プロセスは、以下の点が真考慮する必要があります。

1)挿入位置:外部または挿入の内側に。挿入位置は、単一の回転は、具体的に以下の分析を見るために、新しい木赤黒木ルールを遵守するのに十分であるかどうかによって影響されます。

2)色の叔父は、ノード:色叔父ノードは赤または黒です。ときに赤い色は、変換プロセスのように長くなることが、あなたは黒を回転させる必要があります。

3)色曽祖父ノード:曽祖父の色は赤または黒の点です。叔父ノードは赤であるように、我々は色処理を変更する曽祖父は赤色であった場合、新たな矛盾は、具体的に以下の分析を見るために、ノードとノードの色の変化の曽祖父の間に現れました。

ケース1:叔父ノードは黒であり、外側に挿入されています

私は挿入位置の影響についてお話しましょう:

外側が挿入されている場合、例として図。

まず、私たちはそれができ直接Pへの単純なポイントが黒くなることを、PとN色の衝突が赤であることをされていません考えますか?

RBTreeが平衡になる前にNが挿入されていないため、アイデアは、P及びUサブサブツリーブラックツリーノードを直接染色するNとPとPの問題を解決するために、今と同じ色でなければならないことを意味し、間違っています黒、黒ノードにおけるP新しいサブツリーに相当し、損傷黒ノードルールに同じパスは、これは不可能です。

まず、私たちは他の方法を考えてみましょう、PとNが接続されている、と私たちの目的はそれらなし色のルールを他を破壊することで、直接の色は実行不可能であることが判明した、と私たちの考え方が変化しているましたノードは、PサブツリーにPをさせていない場合、すなわち、見て彼はPの変色の例レベルを上げてみましょうそうオリジナリティPの数が少ない黒のノードがまだ同じである Pが赤なので、(モバイルノード)はブラックオリジナルPサブツリーの数を変更しません。

我々は回転操作AVLツリーは、サブツリーを左旋性G、G 3つのサブツリーなり従うが組み込まれているため、Pが現在上昇高さであることが見出されています。オリジナルのアイデアに基づき、PとNの間で、Pの色を変更するために、今何の問題もないが、Gは右のサブツリーを落ちたので、黒のノードの右の子の数を増やすが、良い取引、私たちだけをGは、ライン上に赤に変わります。

 

ケース1:叔父ノードは黒であり、内部に挿入され

私たちは、挿入された内部の影響を考慮してください。

一例として、内側のインサート、図1F:

我々は上記述べたように即時の色変化は、これは現実的ではありません、外挿入の例に従えば、それを変更する色のPの高さを増すこと?

それが原因の挿入位置が変化することは不可能です。我々は、Pノードは赤であるため、その右サブツリーのルートは黒でなければならず、したがって従来から回転後右サブツリーP Gは、上記で、左の部分木に組み込まれることがわかり、上記でどんな色Gは発生しません赤ではありません。

そして、それは今見ることができ、新たに挿入された位置の内側には、ノードは組み込まれ、(挿入ノードが黒であれば、黒はノード、ノードブラックルールの同数の破壊を追加することと同じである)を挿入し、赤色されなければなりませんGの後、メイク及びNは、GとGに対して内側に赤色現れ、N従ってのみNまだ処理し、左右のサブツリーサブツリーの間でジャンプすると、挿入されあなたは本当に赤黒木のバランスをとることができません。

だから我々は単に一回転は、問題を解決することはできませんが、我々は発見したPはL、挿入された外側の状況を直接進化のと等価である場合。

良好な取引は、最初のP Lは、アウターケース、次にGデキストロース、変色缶内に挿入されます。

 

その後、我々は色の問題叔父ノードについて話します:

ノード上の色の叔父ノードの最初の議論については、すでに叔父は黒で議論され、我々は唯一のノードの叔父赤の状況を考える必要は。

赤いハンドルは実際には非常に簡単であるノード叔父は、以下の写真は一例を示しています。

問題は、P、N間に赤い色で提示することである、と我々は単に全体の色P及びUを変更する場合、およびGは、(黒のノードの数のバランスを維持するために)に色を変更します。

しかし、このアプローチはまた、問題を引き起こす可能性が、問題は、我々は赤Gに色が変化するということです

これはまた、問題の祖父ノードである、因子3)を導入します。

ノードが黒の曽祖父である場合は、すべてのことと言って、今RBTreeバランスが、曽祖父のノードは赤であれば?

NGを説明することができるとの間で解決策がすでに行われているように、我々は今、色の問題と祖父の祖父GG GとNの間に床の上に同じ色の赤にNPの問題を変換します。

 

おすすめ

転載: www.cnblogs.com/lxy-xf/p/11369568.html