Kırmızı-siyah bir ağacın aşağıdaki tanımını varsayalım:
- Bu bir ikili arama ağacıdır.
- Her bir düğüm kırmızı ya da siyah renklidir. Kök siyah.
- Bir kenar tarafından birbirine bağlanmış iki düğüm aynı anda kırmızı olamaz.
- İşte WIL'deki gibi bir NIL yaprağının iyi bir tanımı olmalı . NIL yaprağı siyah renklidir.
- Kökten herhangi bir NIL yaprağına giden yol aynı sayıda siyah düğüm içerir.
Soru
Kırmızı-siyah ağaç için insert
ve delete
işlemlerini uyguladığınızı varsayalım . Şimdi, eğer geçerli bir kırmızı-siyah ağaç verilirse, onu oluşturan bir dizi insert
ve delete
işlemler her zaman var mı?
Motivasyon
Bu soru, bu motive edilir sorusuna ve gelen tartışma ile bu soruya .
Şahsen, yalnızca siyah düğümlerden oluşan (mükemmel dengelenmiş bir ağaç hayal ettiğiniz anlamına gelir) geçerli bir kırmızı-siyah ağaç hayal ederseniz, onu oluşturan bir dizi insert
ve delete
işlem olduğuna inanıyorum. Ancak,
- Bunu doğru olarak nasıl ispatlayacağımı bilmiyorum
- Ben daha genel davaya da ilgi duyuyorum
insert
ve delete
bir inşa etmek sadece siyah düğümden oluşan geçerli kırmızı-siyah ağaç . Bu kullanır , eklemeler / silmeler yüksekliği bir ağaç oluşturmak için . Öncelikle, ekleri kullanarak genişlikle ilk olarak mükemmel dengelenmiş bir kırmızı-siyah ağaç oluşturabiliriz , ardından ekleri ve aynı miktarda silme işlemini yeniden oluşturabiliriz tamamen siyah bir ağaç. Buradaki hile , en alttaki kırmızı katmanın ağacın kök kısmına ulaşana kadar yukarı katının yönünde hareket etmesi .
insert
ve delete
işlem yapmak mümkün mü?
insert
ve uygulamasının kesin uygulanmasına bağlı olacaktır delete
; bu işlemleri yapmanın birkaç yolu olabilir. b) RB ağaçları esasen 4. dereceden B-ağaçları olduğundan, orada ilham alınabilir. RB'den B'ye (ve / veya geriye) eşleme benzersiz olmadığı için detaylar zor olabilir.