Tek sayı dönüşlü yayvan ağacı


9

Yayvan ağacına bir öğe eklerken, döndürmeler ya zig-zag ya da zig-zig desenine göre çiftler halinde gerçekleştirilir. Gerçekleştirilecek tek sayıda rotasyon olduğunda, yapraktan başlayarak ekstra rotasyon yapılabilir veya ekstra rotasyon kaydedilebilir ve kökte yapılabilir. Önemli mi?

Örneğin, ekli görüntüde bir BST'ye 4 eklerim ve köküne "yayarım". Şeklin üstünde, ilk olarak yaprak düğümünde zig-zig çiftini buluyorum ve zig-zag yayılımını alttan gerçekleştirerek kökte son sağ dönüşü bırakıyorum. Şeklin altında, önce yapraktan başlayarak garip rotasyonu yapıyorum ve sonra kök için bir zig-zig yayması yapıyorum.

Hangisi doğru? Yoksa her ikisi de olağan yayvan ağacı performansına yol açacak mı?

tek sayıda dönüş için iki yol gösterme

Yanıtlar:


4

Analiz için gerçekten önemli değil. Dala ağacı performansını analiz etmek için anahtar lemma erişim lemmasıdır . Bir splay (x) işleminin itfa edilmiş maliyetlerinin1+3(r(t)-r(x)), nerede t ağacın köküdür ve r(u): =günlük(Bayrağın ağırlığı ualt ağacı). Bir alt ağacın ağırlığı, düğümlerinin ağırlıklarının toplamıdır. (Ağırlıklar (pozitif), lemmanın uygulanmasına bağlı olarak seçilecektir.) Kullanılan potansiyel fonksiyonΦ(T)=Σx düğümü Tr(t).

Erişim lemmasının kanıtı, tek bir zig / zig-zag / zig-zig vs. işleminin maliyetine bakar. Sen al

  1. Zig veya zag işlemlerinin maliyetleri 1+3(r+(u)-r(u)), nerede r+ ameliyattan sonra çaldı ve u düğüm yukarı doğru döndürülür.

  2. Zig-zig / zig-zag maliyetleri ve simetrik işlemler 3(r+(u)-r(u)).

Bu farkları tek bir gösterimle (x) yapılan işlemler için toplarsanız , bir teleskop toplamı elde edersiniz ve geriye kalan1+3(r(t)-r(x)).

Dönüşlerin sırasını değiştirirseniz aynı tutarı elde edersiniz. Tek fark, şimdi '' +1 '' nin son rotasyondan değil, ilk rotasyondan gelmesidir. Ortada zig dönüşü bile yapabilirsiniz. Tüm diğer (klasik) analizler erişim lemmasına dayanır.

Bununla birlikte, tek dönüşü en son gerçekleştirmenin nedeni, düğümün derinliğinin önceden çift mi yoksa tek mi olduğunu bilmemenizdir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.