“Dasturiy injiniring” fakulteti “MA‟lumotlar tuzilmasi va algoritmlar”


node nomli yangi  toifa yaratamiz:  class  node



Yüklə 1,33 Mb.
Pdf görüntüsü
səhifə30/56
tarix08.09.2023
ölçüsü1,33 Mb.
#142109
1   ...   26   27   28   29   30   31   32   33   ...   56
dokumen.tips aoemaalumotlar-tuzilmasi-va-ekvivalentlik-implikatsiya-chiqarib-tashlash-va

node
nomli yangi 
toifa yaratamiz: 
class 
node

public: 
int info; 
node *left; 
node *right; 
}; 
Endi yuqoridagi belgilashlarda keltirilgan ko‟rsatkichlarni shu toifada 
yaratib olamiz. 
node *tree=NULL; 
node *next=NULL; 
int n,key; cout<<"n=";cin>>n; 
Nechta element (n) kiritilishini aniqlab oldik va endi har bir element 
qiymatini kiritib, binar daraxt tuzishni boshlaymiz. 

for(int i=0;i
left 
right 
info 


67 
node *p=new node; 
node *last=new node; 
cin>>key; 

p->info=key; 
p->left=NULL; 
p->right=NULL; 
if(i==0){ tree=p; next=tree;sontinue;} 
next=tree; 
while(1){ last=next;
if(p->infoinfo) next=next->left; else next=next->right; 
if(next==NULL) break;

if(p->infoinfo) last->left=p; else last->right=p; 

Bu yerda 
p
hali aytganimizdek, kiritilgan kalitga mos hosil qilingan yangi 
element ko‟rsatkichi, 
next
yangi element joylashishi kerak bo‟lgan joyga olib 
boradigan shox adresi ko‟rsatkichi, ya‟ni u har doim 
p
dan bitta qadam oldinda 
yuradi, 
last
esa ko‟rilayotgan element kimning avlodi ekanligini bildiradi, ya‟ni u 
har doim 
p
dan bir qadam orqada yuradi (4.4-rasm). 
4.4-rasm. Binar daraxt elementlarini belgilash 
Shunday qilib binar daraxtini ham yaratib oldik. Endigi masala uni ekranda
tasvirlash kerak, ya‟ni u ko‟rikdan o‟tkaziladi yoki vizuallashtirsa ham bo‟ladi.


68 

Yüklə 1,33 Mb.

Dostları ilə paylaş:
1   ...   26   27   28   29   30   31   32   33   ...   56




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