• Stack klassi
  • C++ da yarimstatik ma'lumotlar tuzilmasi ifodalash navbat stek va dek reja: I. Kirish II. Asosiy qism




    Download 187.35 Kb.
    bet6/18
    Sana31.01.2023
    Hajmi187.35 Kb.
    #40306
    1   2   3   4   5   6   7   8   9   ...   18
    Bog'liq
    C da yarimstatik ma\'lumotlar tuzilmasi ifodalash navbat
    Klaviatura, Loyiha, Elеktromagnit tizimli asboblar., YOSH XIVALIKLAR, Simsiz aloqa tizimlarida axborot resurslarini himoyalash-fayllar.org, BAHOLASH MEZONLARI, 7-mavzu. Parallel ulash (3), 152371477 (1), 152371477 (2), Amaliy matematika va informatika kafedrasi, 1-Amaliy mashg`ulot Matnli hujjatlarni formatlash va, Informatika. 6-sinf (2017, B.Boltayev, M.Mahkamov), Mustaqil ish
    Dastur natijasi
    n=8
    kirit=1
    kirit=2
    kirit=3
    kirit=4
    kirit=5
    kirit=6
    kirit=7
    kirit=8
    dek ele-tlari=4 3 2 1 5 6 7 8
    dek ele-tlari=4 8 2 6
    Oldingi qismlarda biz asosiy ma'lumotlar tuzilmalarini ko'rib chiqdik, ular aslida massiv ustidagi qo'shimchalar edi. Ushbu maqolada biz to'plamlarga oddiy operatsiyalarni qo'shamiz va bu ularning imkoniyatlariga qanday ta'sir qilishini ko'rib chiqamiz.
    Shuningdek, ushbu turkumdagi boshqa maqolalarga qarang:ikkilik daraxt,dinamik massiv,bog'langan ro'yxat,algoritm murakkabligini baholash,tartiblashvato'plamlar.
    Stak
    Stack - bu to'plam bo'lib, uning elementlari oxirgi kiruvchi birinchi chiqish (oxirgi kiruvchi birinchi chiqish yoki LIFO) asosida olinadi. Bu shuni anglatadiki, biz faqat oxirgi qo'shilgan elementga kirishimiz mumkin.
    Ro'yxatlardan farqli o'laroq, biz ixtiyoriy stek elementiga kira olmaymiz. Biz faqat maxsus usullar yordamida elementlarni qo'shishimiz yoki olib tashlashimiz mumkin. Ro'yxatlar kabi stekda Contains usuli ham mavjud emas. Bundan tashqari, stekda iterator yo'q. Stack nima uchun juda cheklanganligini tushunish uchun uning qanday ishlashini va qanday ishlatilishini ko'rib chiqaylik.
    Stackni tushuntirish uchun eng keng tarqalgan o'xshashlik - bu plitalar to'plami. Stackda qancha plastinka bo'lishidan qat'i nazar, biz har doim yuqori qismini olib tashlashimiz mumkin. Xuddi shu tarzda qoziq ustiga toza plitalar qo'yiladi va biz har doim oxirgi qo'yilgan plastinkani birinchi bo'lib olamiz.

    Agar biz, masalan, qizil plastinkani, keyin ko'kni va keyin yashilni qo'ysak, avval yashilni, keyin ko'kni va nihoyat qizilni olib tashlashimiz kerak. Esda tutish kerak bo'lgan asosiy narsa shundaki, plitalar har doim stackning tepasiga joylashtiriladi. Biror kishi plastinka olsa, uni ham yuqoridan olib tashlaydi. Ma'lum bo'lishicha, plitalar ular joylashtirilganiga teskari tartibda qismlarga ajratilgan.


    Endi biz stek qanday ishlashini tushunganimizdan so'ng, keling, ba'zi atamalarni kiritamiz. Elementni stekga qo'shish operatsiyasi "surish" deb ataladi, uni olib tashlash "pop" deb ataladi. Oxirgi qo'shilgan element stekning yuqori qismi yoki "yuqori" deb ataladi va uni "peek" operatsiyasi yordamida ko'rish mumkin. Keling, stekni amalga oshiradigan sinfning stubini ko'rib chiqaylik.
    Stack klassi
    Stack klassi elementlarga kirish uchun Push, Pop, Peek usullarini va Count maydonini belgilaydi. Amalga oshirishda biz elementlarni saqlash uchun LinkedList dan foydalanamiz.
    ommaviy sinfStak
    {
    Bog'langan ro'yxat _elementlari= yangi Bog'langan ro'yxat();

    ommaviy bo'shliqDurang(T qiymati)


    {
    tashlash yangi NotImplementedException();
    }

    ommaviy TPop()


    {
    tashlash yangi NotImplementedException();
    }

    ommaviy TQarang()


    {
    tashlash yangi NotImplementedException();
    }

    umumiy int Count


    {
    olish;
    }
    }

    Download 187.35 Kb.
    1   2   3   4   5   6   7   8   9   ...   18




    Download 187.35 Kb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    C++ da yarimstatik ma'lumotlar tuzilmasi ifodalash navbat stek va dek reja: I. Kirish II. Asosiy qism

    Download 187.35 Kb.