2-mavzu: Dinamik va statik massivlarni tashkil etish. Interfeyslar va ularning hisoblash murakkabligi


C++ tilida navbatni tashkil qilish


Download 240.11 Kb.
bet5/8
Sana30.03.2023
Hajmi240.11 Kb.
#1309725
1   2   3   4   5   6   7   8
Bog'liq
2-

C++ tilida navbatni tashkil qilish
Agar siz C ++da navbat shablonidan foydalanmoqchi bo'lsangiz, unda avval kutubxonasini kiritishingiz kerak.
Bundan tashqari, navbatni e'lon qilish uchun quyidagi strukturani ishlatishingiz kerak.
queue ;
Misol uchun:
queue navbat;
Navbatning metodlari:
Navbat bilan ishlash uchun funksiyalarni bilish kerak: push(), pop(), front(), back(), empty().

  1. Navbatga yangi element qo'shish uchun push() funksiyasidan foydalanish kerak. Qavslar tarkibida biz qo'shmoqchi bo'lgan qiymat bo'lishi kerak.

  2. Agar biz birinchi elementni olib tashlashimiz kerak bo'lsa, biz pop() funksiyasi bilan ishlashimiz kerak. Qavslar ichida endi ko'rsatilishi kerak bo'lgan narsa yo'q, lekin qoidalarga ko'ra, ular albatta mavjud bo'lishi kerak! Ushbu funksiyalarga argument kerak emas: empty(), back() va front().

  3. Agar navbatning birinchi elementiga murojaat qilishingiz kerak bo'lsa, unda front() funktsiyasi kerak.

  4. back() funksiyasi navbatdagi oxirgi elementga kirishga yordam beradi.

  5. Navbatning bo'shligini bilish uchun empty() funksiyasidan foydalanish mumkin.

  • Agar sizning navbatingiz bo'sh bo'lsa, u true qiymatini qaytaradi.

  • Agar unda biror narsa bo'lsa, u false qaytadi.

Quyida biz yuqoridagi metodlarning barchasini qo'llaymiz:
#include
#include // Queue kutubxonasini ulash
using namespace std;
int main() {
queue N; // Navbat yaratish
cout << "Yettita son kiriting: " << endl;
for (int h = 0; h < 7; h++)
{
int a;
cin >> a;
N.push(a); // Navbatga element qo'shish
}
cout << endl;
cout << "Eng birinchi elementi: " << N.front() << endl;
N.pop(); // Navbatdan element o'chirish
cout << "Birinchi element: " << N.front() << endl;
if (!N.empty()) cout << "N bo'sh emas!";
return 0;
}

Download 240.11 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8




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