değiştirilmiş ikili arama ağacı göz önüne alındığında, k'th küçük elemanı bulmak

oy
4

Belirli bir ikili ağaçta varsayalım her düğüm alt öğelerin sayısını içeriyorsa , o zaman ağacında k'th küçük elemanı bulmak için en uygun yolu nedir?

Bu düzenli BST olmadığını unutmayınız. Her bir düğüm altında bir alt öğe sayısını içeren bir.

Oluştur 06/09/2011 saat 13:56
kaynak kullanıcı
Diğer dillerde...                            


3 cevaplar

oy
4

find_element(root, k)

    if(root.left.nchildren + 1 == k - 1) 
        return root;

    if(root.left.nchildren + 1 >= k)
        return find_element(root.left, k)             

    else 
        return find_element(root.right, k - (root.left.children + 1))
Cevap 06/09/2011 saat 14:04
kaynak kullanıcı

oy
0

Bu bende ne olduğunu:

find (root, k)
{
leftChildCount = root->left->n
rightChildCount = root->right->n

if (leftChildCount+1 == k)
  Print root node
else if (k< leftChildCount)
  Find(root->left,k)
else
  Find(root->right,k-leftChildCount)
}
Cevap 06/09/2011 saat 14:05
kaynak kullanıcı

oy
0

BST Traverse Inorder dizisine hareket şekli ve depo elemanları. Kişisel dizi sıralanmış bir dizidir.

Cevap 22/05/2013 saat 20:15
kaynak kullanıcı

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more