O’zbekiston respublikasi oliy va o’rta maxsus ta’lim vazirligi toshkent axborot texnologiyalari universiteti



Download 18,82 Mb.
bet34/162
Sana28.02.2022
Hajmi18,82 Mb.
#474381
1   ...   30   31   32   33   34   35   36   37   ...   162
Bog'liq
МТ Мажмуа МАЪРУЗАЛАР

3. Elementni ro‘yhatga qo‘shish


Berilgan ro‘yhatda p ko‘rsatkich ko‘rsatayotgan elementdan keyin informatsion maydoni x bo‘lgan elementni qo‘yamiz (9-rasm).

9-rasm. Ro‘yhatga yangi element qo‘shish

Aytilganlarni amalga oshirish uchun quyidagi amallarni bajarish lozim:
a) qko‘rsatkich ko‘rsatuvchi bo‘sh elementni yaratish: Node *q=new Node;
b) Yaratilgan element informatsion maydoniga xni kiritish: q->info=x;
c) qelementni p elementdankeyingi element bilan bog‘lash.
q->ptr=p->ptr – yaratilgan element ko‘rsatkichigap element ko‘rsatkichini o‘zlashtirish.
d) p element bilan q elementni bog‘lash.
p->ptr=q – bu amal p elementdan keyingi element q ko‘rsatkich murojaat qilgan element bo‘lishini anglatadi.
Natijada quyidagi rasmdagidek ko‘rinishga ega bo‘lamiz.


10-rasm. Natijaviy ro‘yhat ko‘rinishi

Endi shu algoritmni C++ tilidagi realizatsiyasini ko‘rib chiqsak.


Node* p = lst;
Node* q = new Node;
int numb = -1;
cout<<"son kiriting: ";
cin>>numb;
q->number = numb;
int k;
cout<<"nechtaelementdankeyinkiritasiz k=";cin>>k;
for(int i=0;inext;
q->next = p->next;
p->next = q;
          1. 4. Bir bog‘lamli ro‘yhatdan elementni o‘chirish


Ro‘yhatda p ko‘rsatkich ko‘rsatayotgan elementdan keyingi elementni o‘chiramiz (11-rasm).

11-rasm. Ro‘yhat o‘rtasidan element o‘chirish

Buni ro‘yobga chiqarish uchun quyidagi ishlarni amalga oshirish lozim:
a) O‘chirilayotgan elementni ko‘rsatuvchiq ko‘rsatkichni kiritish.
q=p->ptr;
b) p elementni q elementdan keyingi elementbilan bog‘lash.
p->ptr=q->ptr;
c) O‘chirilayotgan element info maydonidagi informatsiyani yodda saqlash (agar zarur bo‘lsa)k=q->info;
d) q ko‘rsatkichko‘rsatayotganelementni o‘chirish.
delete(q)
Natijadaro‘yhatquyidagiko‘rinishgaegabo‘ladi:

12-rasm. Natijaviy ro‘yhat ko‘rinishi


Shu algoritm dasturi:
Node* p = lst;
Node* q = new Node;
int k;
cout<<"k=";cin>>k;
for(int i=0;inext;
q = p->next;
p->next = q->next;
delete(q);

Download 18,82 Mb.

Do'stlaringiz bilan baham:
1   ...   30   31   32   33   34   35   36   37   ...   162




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