O’zbekiston respublikasi aloqa, axborotlashtirish va telekommunikatsiya texnologiyalari davlat qo’mitasi


Bir bog„lamli ro’yhat boshiga element qo„yish



Yüklə 0,92 Mb.
səhifə21/52
tarix20.10.2022
ölçüsü0,92 Mb.
#65616
1   ...   17   18   19   20   21   22   23   24   ...   52
O’zbekiston respublikasi aloqa, axborotlashtirish va telekommuni

Bir bog„lamli ro’yhat boshiga element qo„yish




3.3-rasm. Bir bog„lamli chiziqli ro’yhat tuzilishi


3.3-rasmdagi ro’yhat boshiga informatsion maydoni D o’zgaruvchi bo’lgan element qo„yamiz. Ushbu ishni amalga oshirish uchun quyidagi amallarni bajarish lozim bo’ladi:

  1. p Ko’rsatkich murojaat qiladigan, bo’sh element yaratish (3.4-rasm).



3.4-rasm. Yangi element hosil qilish





  1. Yaratilgan element informatsion maydoniga D o’zgaruvchi qiymatini o’zlashtirish (3.5-rasm).


3.5-rasm. Yangi element info maydoniga qiymat kiritish



  1. Yangi elementni ro’yhat bilan bog„lash: p->ptr=lst; (shu holatda yangi element va lst – ro’yhat boshini ko„rsatyapti)

  2. lst Ko’rsatkichni ro’yhat boshiga ko„chirish (3.6-rasm). lst=p; Va nihoyat:

3.6-rasm. Ro’yhat boshiga element qo„shish


Endi shu algoritmni C++ tilidagi realizatsiyasini ko„rib chiqamiz.


Node * p = new Node;
int numb = -1; cout<<"son kiriting: "; cin>>numb;
p->info = numb; if (lst ==NULL){
p->next = NULL; lst = p; }
else { p->next = lst; lst = p;}
  1. Bir bog„lamli ro’yhat boshidan elementni o„chirish


Ro’yhatda birinchi element info informatsion maydonidagi Ma’lumotni esda saqlab qolib uni ro’yhatdan o„chiramiz (3.7-rasm).

3.7-rasm. Ro’yhat boshidagi elementni o„chirish





lozim:
Yuqorida aytilganlarni amalga oshirish uchun quyidagi ishlarni bajarish

  1. o„chirilayotgan elementni ko„rsatuvchi p Ko’rsatkich kiritish: p=lst;

  2. p Ko’rsatkich ko’rsatayotgan element info maydonini qandaydir x

o’zgaruvchida saqlash: x=p->info;

  1. lst Ko’rsatkichni yangi ro’yhat boshiga ko„chirish: lst=p->ptr;

  2. p Ko’rsatkich ko’rsatayotgan elementni o„chirish: delete(p); Natijada 3.8-rasmdagi ko’rinishga ega bo„lamiz.

3.8-rasm. Ro’yhatning natijaviy ko’rinishi


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


Node* p = new Node;
if (lst == NULL){ cout<<"ro'yhat bo'sh"; system("pause");
system("CLS");
}
else { p = lst;
lst = p->next ; delete(p);
}

  1. Yüklə 0,92 Mb.

    Dostları ilə paylaş:
1   ...   17   18   19   20   21   22   23   24   ...   52




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin