Yarim-statik tuzilmalar Navbat va undagi amallar. Navbatlarni tasvirlash. Dek va undagi amallar


Download 380.16 Kb.
bet2/4
Sana19.01.2023
Hajmi380.16 Kb.
#1102305
1   2   3   4
Bog'liq
10 мавзуStek, navbat va dek Stek, navbat va deklarni massiv yordamida

#include
Navbatni dasturda e’lon qilish quyidagicha:
Queue nav1;

Navbatdagi asosiy amallar

Navbat ustida quyidagi amallar bajariladi:

  • Insert( q , i ) – navbatga yangi element kiritish, bu yerda q – stek uchi, i - stekga kiritiladigan element;
  • Remove ( q ) – navbat boshidan elementni o’chirish;
  • Empty ( q ) – navbatni bo’sh yoki bo’sh emasligini tekshirish (natija: true - bo’sh, false – bo’sh emas);
  • Clear()- navbatni tozalash.
  • isEmpty()– navbatni bo’shlikka tekshirish
  • enqueue(el)—elelementni navbatga joylashtirish
  • dequeue() —navbatdan birinchi elementni olish
  • firstEl() — navbatning birinchi elementini uni o’chirmasdan qaytaradi

Navbatdagi asosiy amallar


Navbatda bajariladigan enqueue va dequeue amallari rasmda keltirilgan. Steklardan farqli ravishda navbatlarda o’zgarishlar uning oxirida va boshida bo’lishi nazorat qilinishi lozim. Elementlar navbatga oxiridan joylashtiriladi, olish esa boshidan amalga oshiriladi.

Navbatdagi asosiy amallar

Faraz qilaylik, navbat bir o’lchamli massiv ko’rinishida ifodalangan bo’lib uning uzunligi max_q ga teng bo’lsin, ya’ni queue[max_q]. Bu yerda first –navbat boshi, last navbat oxiri, x esa turga tegishli element.

void Insert(int last, BT x) {

if (last= =max_q) exit(1);

queue[last]=x;

last++; }

void Empty(int first, last) {

if (first= =last) p=1;

else p=2; }

void Remove(int first, last) {

if (first= =last) exit(1);

first++; }

Navbatning turlari

  • Navbatning yana bir turi bu dekdir.
  • Dek (DEQ - Double Ended Queue) - ikkita chetli navbat.
  • Dekning o’ziga xos xususiyati shundan iboratki, elementlarni yozish va o’qishni har ikkala chetidan xam amalga oshirish mumkin.
  • Dekni quyi chegaralari birlashtirilgan ikkita stek ko’rinishda qarash mumkin.
  • Barcha turdagi navbatlarni foydalanuvchi dasturlarida massiv yoki bir bog’lamli (oshkor) ro’yxatlar ko’rinishida tasvirlash qulay va tushunarli.

Download 380.16 Kb.

Do'stlaringiz bilan baham:
1   2   3   4




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