Amaliy mashg’ulot- 8 Mavzu: Bog’langan ro’yxat. Ikkala bog’langan ro’yxat bilan ishlash. Konteyner steki. Stackning asosiy operatsiyalari


Download 42.5 Kb.
bet2/4
Sana03.12.2023
Hajmi42.5 Kb.
#1799219
1   2   3   4
Bog'liq
Murodov B 8910

Nazorat savollari

  1. Ikki tomonlama bog'langan ro'yxat qayerda ishlatiladi?

  2. Tugunlarni qo’llash usullari nechta?

  3. Doubly linked list funksiyasi qanday ishlaydi?

  4. Stek asosan nima vazifani bajaradi?

  5. Stek boshqa konteynerlar bilan asosan nimasi bilan farqlanadi?

  6. Qaysi funksiya stekning yuqoridagi elementiga murojaat uchun ishlatiladi?

  7. Stekning yuqori qismidagi elementni o’chirish uchun qanday funksiya ishlatiladi?

AMALIY MASHG’ULOT- 9
Mavzu: Stekning tuzilishi. Massiv va ro’yxatlar bilan stackni tuzish. Navbat. Navbatdagi asosiy operatsiyalar.


Ishdan maqsad. Ushbu laboratoriya ishida talabalar STL komponentalaridan biri bo’lgan stek bilan tanishib chiqishi hamda stekda mavjud bo’lgan funksiyalar bilan ishlashni o’rganishlari kerak.
Qo’yilgan masala. Talabalar topshiriq variantiga mos ravishda steklar ustida berilgan funksiyalar bilan ishlash ko’nikmasiga ega bo’lishlari kerak.
Ish tartibi:

  • Tajriba ishi nazariy ma’lumotlarini o‘rganish;

  • Berilgan topshiriqning algoritmini ishlab chiqish;

  • C++ dasturlash muhitida dasturni yaratish;

  • Natijalarni tekshirish;

  • Hisobotni tayyorlash va topshirish.

Stakning barcha elementlari bir xil bo'lganligi sababli, C yoki C ++ dagi Arrays yordamida stekni amalga oshirish juda oson. Stakning birinchi elementini birinchi qator uyasiga, stackning ikkinchi elementini ikkinchi qator uyasiga va hokazolarni qo'yish mumkin. Stekning yuqori qismi bu stekka qo'shilgan so'nggi elementning indeksidir. Stekni amalga oshirishda stack elementlari massivda saqlanadi.
STACK bu ma'lumotlar strukturasi bo'lib, unda elementlarga faqat bitta uchida, ya'ni Last In First Out ma'lumotlar tuzilmasida kirish mumkin (ochilgan yoki itarilgan). Shunday qilib, stack elementiga faqat tepadan kirish mumkin, pastki yoki o'rtadan emas.Stekning bu xususiyati juda muhimdir va uni yaxshi tushunish kerak.
Massivning yuqori holatini kuzatib borish uchun biz shunchaki Top of Stack deb nomlangan boshqa o'zgaruvchini e'lon qilishimiz mumkin.

Navbatlar - bu birinchi bo'lib chiqadigan (FIFO) tartibda ishlaydigan konteyner adapterlarining turi. Elementlar orqa tomonga (uchiga) kiritiladi va old tomondan o'chiriladi.


Navbat tomonidan qo'llab-quvvatlanadigan funktsiyalar:

empty () - navbatning bo'sh yoki yo'qligini qaytaradi.


size () - navbatning hajmini qaytaradi.
queue :: swap () C ++ STL-da: Ikkala navbatning tarkibini almashtiring, lekin navbati bir xil bo'lishi kerak, ammo o'lchamlari farq qilishi mumkin.
queue :: emplace () da C ++ STL: Navbat konteyneriga yangi element kiriting, yangi element navbat oxiriga qo'shiladi.
C ++ STL-dagi front () funktsiyasidagi queue :: front () va queue :: back () navbatning birinchi elementiga havolani qaytaradi. back () funktsiyasi navbatning oxirgi elementiga havolani qaytaradi.
push (g) va pop () - push () funktsiyasi navbat oxiriga «g» elementini qo'shadi. pop () funktsiyasi navbatning birinchi elementini o'chiradi.

Download 42.5 Kb.

Do'stlaringiz bilan baham:
1   2   3   4




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling