Muhammad al xorazmiy nomidagi toshkent axborot texnologiyalari universiteti



Yüklə 150,65 Kb.
səhifə4/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

AddFirst(Head, NewNode); //return ni birinchi
} //elementga qo’yamiz;
while (q->next) q = q->next; //oxirgi elementni qidiramiz
AddAfter(q, NewNode);
}
Ro’yxat bo’yicha o’tish. Butun ro’yxatni o’tish uchun uning har bir elementini o’qish uchun, ro’yxat boshidan boshlash kerak va keying tugunga o’tish uchun nextko’rsatkichini qo’llaymiz.
PNode p=Head;
while (p!=NULL) {
p = p->next;
}
Ro’yxat tugunini qidirish. Ba’zan ro’yxatning kerakli elementi (adresi yoki ma’lumot) ni qidirib topish talab etiladi. Alohida e’tibor qaratish kerakki, talab qilingan element ro’yxat oxiriga borgunga qadar bo’lishi yoki bo’lmasligi mumkin. Bu yondoshuv quyidagi algoritm bo’yicha amalga oshiriladi:
1) Ro’yxat boshidan boshlash;
2) Joriy element mavjud (ko’rsatkichi NULL emas) bo’lsa, qo’yilgan shartni tekshirish va keyingi elementga o’tish.;
3) Talab qilingan element topilganligi yoki ro’yxat to’liq ko’rib chiqilganligi haqida axborot berish va tugatish.
Misol, quyidagi funktsiya ro’yxatdan mos so’zga (word maydoni berilgan NewWord satrga mos kelishi)ni tekshiradi va uning adresini qaytaradi yoki qidirilgan tugun mavjud bo’lmasa, NULL adresini qaytaradi.
PNode Find (PNode Head, char NewWord[]) {
PNode q = Head;
while (q && strcmp(q->word, NewWord))
q = q->next;
return q;
}
Ro’yxat tugunini o’chirish. Bu protsedura ham ro’yxat bo’yicha berilgan tugunni qidirish bilan bog’liq, topilgan element uchun undan oldingi elementning ko’rsatkichini almashtirish kerak bo’ladi. Agar qidirilgan tugun topilsa, unga qo’yilgan ko’rsatkichni almashtiramiz (5-rasm).

5-rasm. Ro’yxat tugunini o’chirish sxemasi


Shuni alohida e’tiborga olish zarurki, agarda ro’yxatda birinchi bosh tugun o’chirilishi talab qilinsa, u holda ro’yxat boshi ko’rsatkichini alohida saqlab, bosh tugun egallab turgan xotira o’chiriladi. Chunki, bu holda o’chirilayotgan tugun adresi ro’yxat boshi adresi Head bilan ustma-ust tushadi va ro’xyat boshi adresini keyingi elementga o’rnatish kerak.

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