• E’tiboringiz uchun rahmat!
  • Muhammad al-xorazmiy nomidagi toshkent axborot texnologiyalari universiteti nurafshon filiali "Axborot texnologiyalari" kafedrasi Guruh: 610-21 Talaba: Muhammadjonov Sodiqjon Rahbar: Tosheva Muhabbat




    Download 13.51 Mb.
    Sana26.04.2023
    Hajmi13.51 Mb.
    #53958
    Bog'liq
    MTA SODIQJON
    CAE 2 Book, МАРКЕТИНГ мустақил иш, Eratosfen, Eratosfe2, 692-qaror

    MUHAMMAD AL-XORAZMIY NOMIDAGI TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI NURAFSHON FILIALI "Axborot texnologiyalari" kafedrasi Guruh: 610-21 Talaba: Muhammadjonov Sodiqjon Rahbar:Tosheva Muhabbat

    Mavzu: Heap tree ko’rinishidagi binar daraxtlarni qurish algoritmi va ular ustida amallar.

    1. Heap tree tuzilmasi tavsifi. 2. Heap tree ustida amal bajarish algoritmlari. 3. Heap treeni tashkil etish usullari va samaradorligi.


    Heap tree so’zi inglizchadan olingan bo’lib, ikkilik uyurma daraxti degan ma’noni anglatadi va binar daraxtning bir turi bo’lib, binar daraxtdan quyidagi ikkita xususiyati bilan ajralib turadi.
    • Har bir tugun qiymati uning o’g’il tugunlari qiymatidan katta yoki teng (yoki kichik yoki teng bo’lishi ham mumkin);
    • Daraxt ideal muvozanatlangan, yoki daraxt barg tugunlari chapdan o’ngga qarab to’ldiriladi.
    • Agar xar bir tugun o’g’il tugunlatdan katta yoki teng bo‘lsa, bu uyurma daraxtiga max heap, aks holda ya’ni ota tugun farzandlardan kichik yoki teng bo’lsa, min heap deyiladi. Bu degani, max heap da maksimal element daraxt ildizida joylashadi, min heapda esa daraxtning ildizida minimal element joylashadi.
    • Heap tree (a) va heap tree bo’lmagan daraxtlar Bu yerda rasmdagi a) heap tree va b),c) lar esa heap tree emas. Chunki b va c rasmda heap treening birinchi va ikkinchi xususiyatlari buzilgan mos ravishda. Qizig’I shuki, heap tree massiv yordamida yasalishi mumkin. Masalan, data[] = {2 8 6 1 10 15 3 12 11} massiv berilgan bo’lsin. Undan yuqoridan pastga va chapdan o’ngga elementlarni joylab daraxtni (heap tree bo’lmagan) xosil qilamiz. Bunday daraxtlarda bosqichlar soni O(lgn) gat eng.

    Binar uyum (binary heap) bu quyidagi shartlarni qanoatlantiradigan binar daraxtdir: - Har qanday uchning ustivorligi, uning avlodlarining ustivorligidan kichik emas. - Daraxt to'liq ikkilik daraxt boʻlishi uchun (complete binary tree) -barcha darajalar chapdan o'ngga to'ldiriladi.


    1
    O'smaydigan piramida
    max-heap
    Har qanday uchning ustuvorligi avlodlaming ustuvorligidan kichik emas
    2
    Kamaymaydigan piramida
    min-heap
    Har qanday uchning ustuvorligi avlodlarning ustuvorligidan katta emas
    Bo‘sh uyum (kucha) hosil qilish
    stmct heap *heap_create(int niaxsize)
    {
    stnict heap *h;
    h = malloc(sizeof(*h));
    if(h !=NULL)
    {
    h->maxsize = maxsize;
    h->nnodes = 0;
    /* Heap nodes [0. 1. maxsize] */
    h->nodes = malloc(sizeof(*h->nodes) * (maxsize + 1)); if (h->nodes = NULL) {
    free(h);
    retumNULL;
    }
    retum h;
    Uyumni o‘chirish
    void heap_free(struct heap *h)
    {
    free(h->nodes);
    free(h);
    }void heap_swap(struct heapnode *a, struct heapnode *b)
    {struct heapnode temp;
    temp = *a;
    *a = *b;
    struct heapnode *heap_max(struct heap *h {
    if (h->nnodes == 0)
    return NULL;
    return &h->nodes[l];

    E’tiboringiz uchun rahmat!

    E’tiboringiz uchun rahmat!


    Download 13.51 Mb.




    Download 13.51 Mb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    Muhammad al-xorazmiy nomidagi toshkent axborot texnologiyalari universiteti nurafshon filiali "Axborot texnologiyalari" kafedrasi Guruh: 610-21 Talaba: Muhammadjonov Sodiqjon Rahbar: Tosheva Muhabbat

    Download 13.51 Mb.