SORU
24 ŞUBAT 2010, ÇARŞAMBA


Optimum şekilde ikili arama ağacında hazırlanmasında en küçük elemanı bul

Herhangi bir statik/global değişken kullanmadan ikili arama ağacında hazırlanmasında en küçük elemanı bulmak lazım. Nasıl verimli bir şekilde elde etmek için? Benim aklımdaki çözüm Ç işlemi(n), tüm ağaç O'na bir geçiş yapmayı planlıyorum bu yana en kötü durum yapıyor. Ama aslında burada BST özelliğini kullanarak olmadığımı hissediyorum. Assumptive benim çözüm doğru ya da daha iyisini yapmak mümkün müdür ?

CEVAP
24 ŞUBAT 2010, ÇARŞAMBA


İşte bu fikir sadece bir film

Bir BST, T düğümünün sol alt ağacı sadece elemanları değerden küçük T saklanan içerir. k sol alt ağaçtaki eleman sayısı küçükse, kinci en küçük elemanı sol alt etmek zorundadır. k büyükse, aksi takdirde, kinci en küçük elemanı sağ alt.

Her düğüm sol alt ağaçtaki eleman sayısını saklamak için BST arttırabiliriz. Bu bilgiyi, sol alt ağaçtaki sürekli eleman sayısını sorarak ağaç travers basit, sol veya sağ alt yinelenmesine yapmaya karar vermek.

Şimdi, düğüm T olduğumuzu varsayalım:

  1. Eğer== num_elements k(T alt solda)o zaman aradığımız cevap T düğüm. değer,
  2. Eğerk >num_elements(T) sol alt ağacıo zaman kesinlikle sol alt göz ardı edemeyiz, bu unsurları da kküçük inci. den daha küçük olacak çünkü Bu yüzden, sağ alt ağacı k - num_elements(left subtree of T) en küçük elemanı bulma sorunu azaltıyoruz.
  3. Eğerk &; num_elements(T ALT sol) ltkth küçük bir yerde sol alt ağaç sonra , sol alt ağaçtaki kinci en küçük elemanı bulma sorunu azaltıyoruz.

Karmaşıklık analizi:

Bu rastgele bir BST için ortalama dengeli bir BST, ya O(log n) en kötü durumda O(log n) O(depth of node) zaman alır.

Bir BST O(n) depolama gerektirir, ve O(n) başka bir eleman sayısı ile ilgili bilgileri saklamak için alır. Korumak için O(depth of node) zaman ve O(depth of node) ekstra zaman alır tüm BST operasyonları "öğe sayısı" düğüm ekleme, silme ya da dönüş için bilgi. Bu nedenle, sol alt ağaçtaki eleman sayısı hakkında bilgi depolama bir BST Uzay ve zaman karmaşıklığı devam ediyor.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • HBO

    HBO

    17 Mayıs 2006
  • humanHardDrive

    humanHardDri

    16 Mart 2011
  • Press Start

    Press Start

    4 HAZİRAN 2006