|
9-ma'ruza. Steklar va navbatlar. Ularni mantiqiy tasvirlash va ustida amallar bajarish algoritmlari Reja
|
bet | 1/4 | Sana | 30.10.2023 | Hajmi | 2.16 Mb. | | #90936 |
Bog'liq 9-ma\'ruza 2-тема qq, 1663009236, 4etnye, oOTN7yHd9cDpbT4Gzy5WO8q15U02UmfOpM2lfAFB, ТУРКИСТОНДА МУСТАБИД СОВЕТ ХОКИМИЯТИНИНГ ЎРНАТИЛИШИ, 5 sinf imtihon javoblari, stereometriya 1, Практическое применение сингапурской системы, Mastering Git, Gamtaziya stidio dasturi 1234, Kompyuter grafikasi o\'quv qo\'llanma, 544, 3, Z.DUSHANOVA (2)
9-ma'ruza.
Steklar va navbatlar. Ularni mantiqiy tasvirlash va ustida amallar bajarish algoritmlari
Reja.
Yarimstatik ma’lumotlar tuzilmalari.
Stek tuzilmasi va uni dasturda amalga oshirish, ustida amal bajarish
Navbat tuzilmasi va dasturda ifodalanishi, ustida amal bajarilishi
Deklar. Ustida amal bajarish
Kalit so’zlar: navbat, stek, dek, yarimstatik tuzilmalar.
Yarimstatik ma’lumotlar tuzilmalari. Yarimstatik ma’lumotlar tuzilmalari deb nomlangan shunaqa tuzilmalar borki, ular ba’zi bir xususiyatlari bilan statik tuzilmalarga, ba’zi bir xususiyatlari bilan dinamik tuzilmalarga o’xshagan bo’ladi. Ya’ni dastur bajarilishi mobaynida tuzilma uzunligining o’zgaruvchanligi dinamiklik xususiyati bo’lsa, elementlari xotirada ketma-ket joylashishi statik tuzilmalarga o’xshash bo’ladi. Yarimstatik ma’lumotlar tuzilmasi bir xil toifadagi elementlar ketma-ketligi hisoblanadi va unga
kiradi. Deyarli barcha zamonaviy dasturlash tillarida yuqorida keltirilgan tuzilmalat bilan ishlash uchun kutubxonalar mavjud. Va ular konteyner ko’rinishida realizatsiya qilingan. Shuni aytib o’tish kerakki, bu yarimstatik tuzilmalarni dasturda statik tuzilma ko’rinishida xam va dinamik tuzilma ko’rinishida xam ifodalash mumkin, faqat yarimstatiklik shartlarini buzmagan holda, ya’ni bu tuzilmalarning barchasida ixtiyoriy elementlarga tashqaridan murojaat qilib bo’lmaydi.
Steklar. Stek - chiziqli ma’lumotlar tuzilmasi bo’lib, ma’lumotlarni kiritish va chiqarish uning bir tomonidan amalga oshiriladi. Bunday stek kafeteriyadagi tarelkalar to’plamini eslatadi. Yangi elementlar stekning uchiga qo’yiladi va yuqori qismidan olinadi. Oxirgi qo’yilgan element stek uchidan birinchi bo’lib olinadi. Shu sababli, stek LIFO (last in first out) tuzilishidagi ma’lumotlar tuzilmasi bo’ladi, ya’ni, “oxirgi kelgan birinchi ketadi” prinsipi bo’yicha ishlaydi.
Stek o’lchami cheklangan bo’lsa, elementni stekka qo’yilishi stekda kamida bitta elementga joy bo’lgan holdagina amalga oshiriladi. Shuning uchun stek ustida amal bajarishdan oldin stek holatini tekshirish lozim bo’ladi,ya’ni
Steklar bilan ishlash uchun C++ tilida tayyor kutubxona mavjud bo’lib, unga dastur boshida #include deb murojaat qilish kerak. Dasturda stek e’lon qilish uchun quyidagicha yozish kerak.
Stack <toifa> stek_nomi;
Misol uchun,
Stack stek1;
Stekda quyidagi amallar o’rinli:
|
| |