2-laboratoriya ishi. Dinamik massiv, Stek, Navbat, Ro`yhat(bir tomonlama, ikki tomonlama), Lug`at ma`lumotlar strukturalarini mashina xotirasida



Download 234,75 Kb.
bet11/11
Sana31.12.2021
Hajmi234,75 Kb.
#237302
1   2   3   4   5   6   7   8   9   10   11
Bog'liq
2-laboratoriya mashg'uloti

front() va back() funksiyalari

Vektorning birinchi va oxirgi yacheykalarining qiymatlarini bilish uchun front() va back() funksiyalarini ishlatamiz.

Ro’yxat. Bu ikki tomonlama bog'langan ro'yxatlarga asoslangan ma'lumotlar strukturasi. Bu shuni anglatadiki, har qanday element faqat oldingi va keyingi elementlar haqida biladi.

Quyidagi rasmda bu qanday ishlashini ko'rsatib beradi:



Ikki tomonlama bog'langan ro'yxatda indekslar mavjud emas, ammo C++ da uning o'rniga iteratorlar mavjud.



List1[2] = 8;  // Bu xato!
Dasturchilar tezkor qo'shish va olib tashlash sababli ushbu konteynerdan foydalanadilar. Bu juda tez sodir bo'ladi, chunki elementlarni bir-birining orasidan siljitish shart emas, ko'rsatkichlarni to'g'ri boshqarishingiz kerak.

Yuqoridagi misolda, boshida ikkita element bo'lgan, keyin biz ular orasida bitta element qo'shishga qaror qildik.




Va o'chirish shu tarzda amalga oshiriladi.
Ro’yxat hosil qilish. Dastlab list kutubxonasini ulash lozim.

#include

Oldingi konstruktorlar kabi ro’yxatni e’lon qilamiz:

list

Masalan:

list L = {4, 6, 3, 2}

Ro’yxat bilan ishlash metodlari:


Funksiya nomi

Tavsif

pop_front()

Boshlang’ich elementini o’chirish

pop_back()

Oxirgi elementini o’chirish

push_front()

Boshidan element qo’shish

push_back()

Oxiridan element qo’shish

front()

Birinchi elementiga murojaat

back()

Oxirgi elementiga murojaat

insert()

Ko’rsatilgan joyga element qo'shish

unique()

Barcha dublikatlarni o’chirish

merge()

boshqa ro'yxatni qo'shish

#include

#include

#include


using namespace std;
int main() {

list mylist;

list listmerge = {7, 8, 9};
for (int i = 0; i < 2; i++) {

for (int j = 1; j < 6; j++) {

mylist.push_back(i); // 10 ta element qo'shish

}

}



mylist.insert(mylist.end(), 6); // yangi element qo'shish

cout<
mylist.unique(); // Barcha dublikatlarni o'chirish

list :: iterator it;


for (it = mylist.begin(); it != mylist.end(); it++) {

cout << (*it) << " ";

}

cout<

mylist.merge(listmerge); // Ro'yxatni o'zlashtirish

for (it = mylist.begin(); it != mylist.end(); it++) {

cout << (*it) << " ";

}

return 0;



}


Elementlarni o’chirish.


pop_front () va pop_end () usullaridan foydalanib, boshida va oxirida o'chirishga qo'shimcha ravishda, siz quyidagilarni o'chirishingiz mumkin:


  1. Yacheykalar diapazonini.

  2. Ixtiyoriy yacheykani.

  3. Qanday shart asosida biror yacheykani

  4. X qiymatiga ega bo'lgan barcha yacheykalarni

o'chirib tashlash mumkin.
Download 234,75 Kb.

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




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