Binari Ağacın Minimal Dərinliyi#7464

Binari Ağacın Minimal Dərinliyi

1 saniyə
64 meqabayt
Asan

Verilmiş tam ədədlər massivindən bir İkili Axtarış Ağacı qurun. Əgər əlavə edilən ədəd cari zirvəyə bərabərdirsə, onu sağ alt ağaca əlavə edin.

MinDepth metodunu həyata keçirin; bu metod ağacın minimal dərinliyini tapmalıdır. Minimal dərinlik, kökdən ən yaxın yarpağa qədər olan ən qısa yolun zirvələrinin sayıdır.

prb7464.gif

Aşağıdakı interfeysə uyğun kod yazın:

class TreeNode
{
public:
    int val;
    TreeNode *left;
    TreeNode *right;
    TreeNode(int x) : val(x), left(NULL), right(NULL) {}
};

class Tree
{
public:
    TreeNode *head;
    Tree() : head(NULL) {};
    void Insert(int val); // İkili Axtarış Ağacına val ədədini əlavə edin
    int MinDepth(void);   // İkili Axtarış Ağacının minimal dərinliyini qaytarın
};

Lazım olduqda əlavə metodlar yarada və istifadə edə bilərsiniz.

prb7464.gif

Giriş

Birinci sətir (1 \le n \le 100) ədədini ehtiva edir.İkinci sətir tam ədəddən ibarətdir.

Çıxış

Giriş məlumatlarından İkili Axtarış Ağacı yaradın, onun minimal dərinliyini tapın və çap edin.

Nümunələr

Nümunə 1

Loading
Loading