Muhammad al xorazmiy nomidagi toshkent axborot texnologiyalari universiteti


Ikki bog’lamli ro’yxatlar ustida bajariladigan amallar. Ro’yxat boshidan tugun qo’shish



Yüklə 150,65 Kb.
səhifə6/11
tarix24.11.2023
ölçüsü150,65 Kb.
#133580
1   2   3   4   5   6   7   8   9   10   11
ro’yxatlar ustida amallar bajarish. Bog’LANGAN ro’y-fayllar.doc

Ikki bog’lamli ro’yxatlar ustida bajariladigan amallar. Ro’yxat boshidan tugun qo’shish. Ro’yxat boshidan yangi NewNode tugunini qo’shish uchun:
1) NewNode tugunining next ko’rsatkichini mavjud ro’yxatning boshiga o’rnatish va uning prev ko’rsatkichini NULL bilan ta’minlash;
2) Oldingi birinchi tugunning prev ko’rsatkichini (agar u mavjud bo’lsa), NewNode tuguniga o’rnatish;
3) Ro’yxat boshini yangi tugunga o’rnatish;
4) Agar ro’yxatda birorta ham element mavjud bo’lmasa, ro’yxatning oxirgi ko’rsatkichini ham yangi tugunga o’rnatish

Ikki bog’lamli ro’yxatga yangi tugun qo’shish


Ushbu sxema asosida quyidagi protsedura ishlaydi:
void AddFirst(PNode &Head, PNode &Tail, PNode NewNode) {
NewNode->next = Head;
NewNode->prev = NULL;
if ( Head ) Head->prev = NewNode;
Head = NewNode;
if (! Tail ) Tail = Head;  // bu birinchi element
}
Ro’yxat oxiridan tugun qo’shish. Ro’yxat oxiridan yangi NewNode tugunini qo’shish aynan ro’yxat boshidan yangi tugun qo’shish protsedurasi bilan o’xshash bo’lib, faqat bunda protseduraning barcha satrida Head ni Tail bilan, prev ni next bilan mos ravishda o’zaro o’rnini almashtirib chiqish kifoya bo’ladi.
Berilgan tugundan keyin yangi tugun qo’shish. Yangi tugun NewNode ning adresi va ro’yxatda mavjud bo’lgan tugunlardan birining p adresi berilgan. Yangi tugunni ro’yxatning p adresidan keyin qo’shish talab qilingan bo’lsin. Agar p tugun oxirgi bo’lsa, u holda qo’shish amali ro’yxat oxiridan tugun qo’shish kabi bajariladi (yuqoridagi misollarga qarang). Agar r tugun – oxirgi bo’lmasa, u holda qo’shish amali quyidagicha ikki bosqichda amalga oshiriladi:
1) yangi tugun ko’rsatkichlarini berilgan tugunning (next) ko’rsatkichiga va keyingi tugunning (prev) ko’rsatkichlariga o’rnating;
2) qo’shni tugunning ko’rsatkichlarini ham xuddi shunday NewNode tugun ko’rsatkichlariga o’rnating.

Ikki bog’lamli ro’yxatda berilgan tugundan keyin yangi tugun qo’shish


Xuddi shunday usul bilan quyidagi protsedura ishlaydi:

Yüklə 150,65 Kb.

Dostları ilə paylaş:
1   2   3   4   5   6   7   8   9   10   11




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

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin