• Daraxtsimon ma’lumotlar tuzilmasi nima Binar daraxt tuzilmasi nima va uni tuzishga misol keltiring
  • Binar daraxtiga yangi element qo‘shish algoritmini tushuntiring. Binar daraxti elementini o‘chirish algoritmini tushuntiring.
  • Berilgan binar daraxtning terminal tugunlaridan tashkil topgan yangi muvozanatlangan binar daraxt hosil qilish algoritmi va dasturini tuzing.
  • Daraxt tugunlari haqiqiy sonlar bo‘lsin. Daraxt barcha tugunlarini o‘rta arifmetigini hisoblash algoritmi va dasturini keltiring.
  • Daraxt tugunlari haqiqiy sonlar bo‘lsin. Yozuvi berilgan kalit qiymatidan katta bo‘lgan daraxt tugunlarini o‘chiruvchi dastur tuzing.
  • Berilgan binar daraxtning har bir juft elementi balandligini aniqlash algoritmi va dasturini keltiring.
  • Berilgan binar daraxtning oraliq tugunlaridan tashkil topgan yangi binar daraxt tuzish algoritmi va dasturini keltiring.
  • Binar daraxtning barcha barglari yozuvini chop etuvchi dastur ishlab chiqing.
  • Binar daraxtning tugunlari sonini aniqlashning algoritmi va dasturini keltiring.
  • p tugun joylashgan xotira yacheykasini tozalab qo‘yamiz va algoritm yakunlanadi




    Download 0,91 Mb.
    bet10/11
    Sana17.01.2024
    Hajmi0,91 Mb.
    #139331
    1   2   3   4   5   6   7   8   9   10   11
    Bog'liq
    5-laboratoriya mashg‘uloti Daraxt ma\'lumotlarini tuzilishini o\'r-fayllar.org
    1-topshiriq (2) (6), 2-Laboratoriyaga topshiriq (2) (3), 2, 2 laboratoriya isroilov, 1-topshiriq (4), MICROSOFT WORD, digital-transformation-google-cloud (2), MAMATQULOV MUXAMMADJON, O`zbekiston respublikasi oliy va o`rta maxsus ta’lim vazirligi n-fayllar.org, Elektrolitlar ta\'sirida bo\'ladigan koagulyatsiya-fayllar.org, 11-amaliy ish mavzu Tashkilot risklarini baholash va tahlil qil, 4-uzb-dateline, Axborot xavfsizligi, diskret

    p tugun joylashgan xotira yacheykasini tozalab qo‘yamiz va algoritm yakunlanadi.



    Dastur kodi

    #include

    #include

    using namespace std;

    class node{

    public: int info;

    node *left;

    node *right;

    };

    int intrave(node *tree){



    if (tree!=NULL){int a=0, b=0;

    if (tree->left!=NULL){ a=tree->left->info; }

    if (tree->right!=NULL){ b=tree->right->info; }

    cout"<"<

    intrave(tree->left);

    intrave(tree->right); }

    return 0;

    }

    node *del(node *tree,int key){



    node *p=new node;

    node *next=tree;

    node *q=NULL;

    while(next!=NULL)

    { if (next->info==key){cout<<"Binar daraxtda "<

    p=next;break; }

    if (next->info>key){ q=next; next=next->left; }

    else {q=next;next=next->right;}

    }

    if(next==NULL) cout<<"tuzilmada izlangan element yo‘q!!!"<



    node *v=NULL,*t=NULL,*s=NULL;

    if(p->left==NULL) v=p->right;

    else if(p->right==NULL) v=p->left;

    if((p->left!=NULL)&&(p->right!=NULL)){t=p; v=p->right; s=v->left;}

    while(s!=NULL){

    t=v;


    v=s;

    s=v->left;

    }

    if((t!=NULL)&&(t!=p)){



    t->left=v->right;

    v->right=p->right;

    v->left=p->left;

    }

    if(t==p) v->left=p->left;



    if(q==NULL){

    cout

    tree=v;

    delete(p);

    return tree;

    }

    if(p==q->left)



    q->left=v;

    else q->right=v;

    delete(p); // o‘chirilgan element joylashgan xotira yacheykasini tozalash

    return tree;

    }

    int main()



    { int n,key,s; node *tree=NULL,*next=NULL;

    cout<<"n="; cin>>n;

    for(int i=0; i

    node *p=new node;

    node *last=new node;

    cin>>s;


    p->info=s;

    p->left=NULL;

    p->right=NULL;

    if(i==0){tree=p; next=tree; continue; }

    next=tree;

    while(1)

    { last=next;

    if(p->infoinfo)next=next->left;

    else next=next->right;

    if(next==NULL)break; }

    if(p->infoinfo)last->left=p;

    else last->right=p;}

    cout<

    intrave(tree);



    cout<<"delete qilinadigan elementni kiriting \n";

    cout<<"key="; cin>>key;

    tree=del(tree,key);

    intrave(tree);

    getch();

    }

    Nazorat savollari




    1. Daraxtsimon ma’lumotlar tuzilmasi nima?



    2. Binar daraxt tuzilmasi nima va uni tuzishga misol keltiring?



    3. Binar daraxti tuzilmasi ustida qanday amallar bajatirilishi mumkin?



    4. Binar daraxtini ko‘rikdan o‘tkazish algoritmi qanday?



    5. Binar daraxtiga yangi element qo‘shish algoritmini tushuntiring.



    6. Binar daraxti elementini o‘chirish algoritmini tushuntiring.

    Topshiriq



    Variantlar:



    1. Talabalar ismlari ketma-ketligidan binar daraxt hosil qilish algoritmi va dasturini tuzing.



    2. Berilgan binar daraxtning terminal tugunlaridan tashkil topgan yangi muvozanatlangan binar daraxt hosil qilish algoritmi va dasturini tuzing.



    3. Berilgan binar daraxtning har bir tuguni chap tomoni tugunlaridan tashkil topgan muvozanatlangan binar daraxt hosil qilish algoritmi va dasturini tuzing.



    4. Daraxt tugunlari haqiqiy sonlar bo‘lsin. Daraxt barcha tugunlarini o‘rta arifmetigini hisoblash algoritmi va dasturini keltiring.



    5. Daraxt tugunlari haqiqiy sonlar bo‘lsin. Yozuvi manfiy bo‘lgan daraxt tugunlarini o‘chiruvchi dastur tuzing.



    6. Daraxt tugunlari haqiqiy sonlar bo‘lsin. Yozuvi berilgan kalit qiymatidan katta bo‘lgan daraxt tugunlarini o‘chiruvchi dastur tuzing.



    7. Berilgan binar daraxtning balandligini aniqlash algoritmi va dasturini keltiring.



    8. Berilgan binar daraxtning har bir juft elementi balandligini aniqlash algoritmi va dasturini keltiring.



    9. Berilgan binar daraxtning terminal tugunlari balandliklarini aniqlash algoritmi va dasturini keltiring.



    10. Daraxt tugunlari haqiqiy sonlar bo‘lsin. Daraxt barcha tugunlarini o‘rta arifmetigiga teng qiymatli tugunni berilgan binar daraxtga kiritish algoritmi va dasturini keltiring.



    11. Berilgan binar daraxtning oraliq tugunlaridan tashkil topgan yangi binar daraxt tuzish algoritmi va dasturini keltiring.



    12. Berilgan binar daraxtdan kalitlari o‘sish tartibida joylashgan bir bog‘lamli ro‘yhat hosil qilish algoritmi va dasturini keltiring.



    13. Binar daraxtning barcha barglari yozuvini chop etuvchi dastur ishlab chiqing.



    14. Binar daraxtning barcha oraliq tugunlari yozuvini chop etuvchi dastur ishlab chiqing.



    15. Binar daraxtning juft qiymatli kalitga ega elementlaridan yangi daraxt qurish algoritmi va dasturini keltiring.



    16. Binar daraxtning tugunlari sonini aniqlashning algoritmi va dasturini keltiring.



    17. Binar daraxtda berilgan tugungacha bo‘lgan masofani aniqlashning algoritmi va dasturini keltiring.



    18. Download 0,91 Mb.
    1   2   3   4   5   6   7   8   9   10   11




    Download 0,91 Mb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    p tugun joylashgan xotira yacheykasini tozalab qo‘yamiz va algoritm yakunlanadi

    Download 0,91 Mb.