Abdurauf Ahmadjonov laboratoriya ishi -19 Mavzu: Navbat tuzilmasi. Ro’yxatlar yordamida navbatni amalga oshirish


}; // Asosiy funksiya ishga tushirilmoqda



Download 0,72 Mb.
bet4/7
Sana14.01.2022
Hajmi0,72 Mb.
#361809
1   2   3   4   5   6   7
Bog'liq
19 - 24 - lab

};
// Asosiy funksiya ishga tushirilmoqda

int main()

{

Queue q;

q.enQueue(3);

q.enQueue(7);

q.deQueue();

q.deQueue();

q.enQueue(9);

q.enQueue(15);

q.enQueue(18);

q.deQueue();

cout << " Old navbat: " << (q.front)->data << endl;

cout << "Orqa navbat : " << (q.rear)->data<

cout << "Navbat barcha elementlari: "q.front();

}



NATIJANI TEKSHIRISH


XULOSA:

Men ushbu laboratoriya ishida ro’yxatlar yordamida navbatni amalga oshirishni o’rgandim.



LABORATORIYA ISHI – 20

Mavzu:Dek tuzilmasi. Asosiy operatsiyalar.

Ishdan maqsad. Ushbu laboratoriya ishida talabalarSTL komponentlaridan biri bo‟lgan dek(deque) bilan ishlashni o‟rganishlari kerak.

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 orqaga surish va pop operatsiyalari qo'shiladi.

Dekning asosiy funksiyalari quyidagicha:

deque insert() – ushbu funktsiya dek tarkibiga elementlarni kiritish uchun ishlatiladigan C ++ da o'rnatilgan funktsiyadir.

deque rbegin() - Dekning so'nggi elementiga ishora qiluvchi teskari iteratorni qaytaradi.

deque rend() - Dek boshlanishidan oldingi holatga ishora qiluvchi teskari iteratorni qaytaradi.

deque max_size() - deque konteyner sig'adigan elementlarning maksimal sonini qaytaradi. Ya’ni maksimal nechta element qabul qilishini anglatadi.

Topshiriqlar

Ixtiyoriy nomad dek e’lon qiling push() funksiyasi yordamida dastlabki 3 ta tub son dekga kiritilsin, Insert() funksiyasi yordamida 10 soni 7 va 12 sonlari orasiga joylashtirilsin, natija ekranga chiqarilsin.

#include

#include

using namespace std;

int a[10],n,R=0;

bool isEmpty(){

if(R==0) return true; else return false;

}

bool isFull(){



if(R>=10) return true; else return false;

}

int kirit_left(int s){



if(isFull()){cout<<"\ndek to'ldi";n=R;return EXIT_SUCCESS;}

for(int i=R;i>0;i--)

a[i]=a[i-1];

a[0]=s;R++;

}

int olish_left(){



if(isEmpty()){cout<<"\ndek bo'sh";return EXIT_SUCCESS;}

int t=a[0];

for(int i=0;i

a[i]=a[i+1];

R--;

return t;



}

int kirit_right(int s){

if(isFull()){cout<<"\ndek to'ldi";n=R;return EXIT_SUCCESS;}

a[R]=s;R++;

}

int olish_right(){



if(isEmpty()){cout<<"\ndek bo'sh";return EXIT_SUCCESS;}

R--;


return a[R];

}

int print(){



cout<

cout<

}

int main(int argc, char *argv[])



{ int n,s;cout<<"n="; cin>>n;

for(int i=0;i

if(!isFull()){

cout<<"kirit=";cin>>s;

if(i>=n/2) kirit_right(s);

else kirit_left(s);}

else {cout<<"dek to'ldi\n";break;}

}

print();



int b[n/2],k=0,c[n/2],p=0;

while(!isEmpty()){

int q=olish_left();

if(q%2==0) b[k++]=q;

if(isEmpty()) break;

int p=olish_right();

if(p%2==0) b[k++]=p;

}

int i=0;



while(i

kirit_right(b[i]);

i++;

}

print();



system("PAUSE");

return EXIT_SUCCESS;

}




Download 0,72 Mb.

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




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

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish