9-mavzu. Chiziqsiz ma’lumotlar tuzilmasi. Daraxtsimon maʻlumotlar tuzilmalari. Binar va ko‘ptarmoqli daraxtlar. Taʻriflar va xususiyatlar. Daraxtlarni binar ko‘rinishga keltirish algoritmi. Rekursiya va ularni dasturlashda ishlatish


return Daraxtga yangi element qo’shish prosedurasi



Download 2,23 Mb.
bet12/14
Sana02.01.2022
Hajmi2,23 Mb.
#311504
1   ...   6   7   8   9   10   11   12   13   14
Bog'liq
9-mavzu. Chiziqsiz ma’lumotlar tuzilmasi. Daraxtsimon ma lumotla

return Daraxtga yangi element qo’shish prosedurasi

Daraxtga biror bir elementni qo’shishdan oldin daraxtda berilgan kalit bo’yicha qidiruvni amalga oshirish lozim bo’ladi. Agar berilgan kalitga teng kalit mavjud bo’lsa, u holda dastur o’z ishini yakunlaydi, aks holda daraxtga element qo’shish amalga oshiriladi.

Daraxtga yangi yozuvni kiritish uchun, avvalo daraxtni shunday tugunini topish lozimki, natijada mazkur tugunga yangi element qo’shish mumkin bo’lsin. Kerakli tugunni qidirish algoritmi ham xuddi berilgan kalit bo’yicha tugunni topish algoritmi kabi bo’ladi. Biroq berilgan kalit bo’yicha qidiruv prosedurasidan to’g’ridan-to’g’ri (bevosita) foydalanib bo’lmaydi, sababi, qidiruv prosedurasida, qaysi tugunda murojaat NIL (search = nil) bo’lgani fiksirlanmaydi.

Qidiruv prosedurasini shunday modifikasiya qilamizki, qo’shimcha samara sifatida yangi proseduramiz berilgan kalit turgan tugunni fiksirlasin (qidiruv muvofaqiyatli bo’lsa), yoki shunday tugunniki, ushbu tugunni qayta ishlagandan keyin qidiruv yakunlansin (qidiruv muvofaqiyatli bo’lsa).

Daraxtda qo’shilayotgan element kalitiga teng kalitli element yo’q bo’lgan holda elementni qo’shish prosedurasini keltirib o’tamiz.

Node *q=NULL;

Node *p=tree;

while(p!=NULL){

q=p;

if(key==p->key){

search=p;

return 0;

}

If(key
key) p=p->left;


else p=p->right;

}

{Berilgan kalitga teng tugun topilmadi, element qo’shish talab qilinadi. Ota bo’lishi mumkin tugunga q ko’rsatkich beriladi.}

node *q=new node;

Qo’yilayotgan yangi element chap yoki o’ng o’g’il bo’lishini aniqlash lozim.



If(keykey) q->left=yangi;

else q->right=yangi;

search=yangi;

return 0;


Download 2,23 Mb.

Do'stlaringiz bilan baham:
1   ...   6   7   8   9   10   11   12   13   14




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