10-ma’ruza: navbat tuzilmalari: stek, navbat va dek reja


Download 126.31 Kb.
bet10/11
Sana11.11.2021
Hajmi126.31 Kb.
#173577
1   2   3   4   5   6   7   8   9   10   11
Bog'liq
10-hafta maruza

int Pop (Queue &Q) {

int temp;

if (Q.size == 0) {

printf ("Navbat bo’sh\n”);

return 32767; //xatolik haqida xabar

}

temp = Q.data[Q.head];

Q.head ++;

if (Q.head >= MAXSIZE ) Q.head = 0;

Q.size --;

return temp;

}

Pop funktsiyasi navbat boshi olingan sonni qaytaradi, shuning uchun ham navbat o’lchami bir birlikka kamayadi. Agar navbat bo’sh bo’lsa, funktsiya 32767 sonini qaytaradi (bu son navbatda mavjud emas, masala sharti bo’yicha xatolik haqida xabarni ishga tushiradi)



Navbatni ro’yxat yordamida tadbiq qilish. Agar navbatning o’lchami oldindan berilmagan yoki dinamik tuzilma hosil qilinishi talab qilingan bo’lsa, u holda ro’yxat yordamida tadbiq qilish zarur bo’ladi. Elementlari butun sonlardan iborat navbatni qarab chiqamiz. Buning uchun uning elementlari sonini (o’lchamini) mumkin bo’lgan xotira hajmi bilan chegaralaymiz. Yangi turdagi ma’lumotlar tuzilmasi (tugun va unga ko’rsatkich) ro’yxat sifatida e’lon qilinadi:


Download 126.31 Kb.

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




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