AMALIY MASHG’ULOT-10 Mavzu: Navbat tuzilmasi. Ro’yxatlar yordamida navbatni amalga oshirish. Dek tuzilmasi. Asosiy operatsiyalar.
Ishdan maqsad. Ushbu laboratoriya ishida talabalar ro’yxatlar yordamida navbatni amalga oshirishni, talabalarSTL komponentlaridan biri bo’lgan dek(deque) bilanishlashni o’rganishlari kerak.
Qo’yilgan masala. Talabalar topshiriq variantiga mos ravishda ro’xatlar ustida berilgan funksiyalar bilan ishlash ko’nikmasiga ega bo’lishlari kerak.
Ish tartibi:
Dek – bu ikki tomonlama navbat hisoblanadi. Ya’ni (Double ended queues) Ikkala uchli navbat - bu ikkala uchida kengayish va qisqarish xususiyatiga ega bo'lgan ketma-ket konteynerlar.
Ular vektorlarga o'xshash, ammo elementlarni kiritish va yo'q qilishda samaraliroq. Vektorlardan farqli o'laroq, tutashgan joy ajratilishini kafolatlash mumkin emas.
Dek, asosan ma'lumotlar tuzilmasining ikki tomonlama navbatini amalga oshirishdir. Navbatdagi ma'lumotlar tuzilishi faqat oxiriga qo'shib, old tomondan o'chirishga imkon beradi. Bu haqiqiy hayotdagi navbatga o'xshaydi, unda odamlar old tomondan olib tashlanadi va orqada qo'shiladi. Ikkala tugagan navbat - bu qo'shilish va o'chirish operatsiyalari ikkala uchida ham mumkin bo'lgan navbatlarning alohida holati.
Dek uchun funktsiyalar vektor bilan bir xil, oldinga va orqagasurish va pop operatsiyalari qo'shiladi.