|
|
|
Implementacija Binarnog stabla pomoču polja
0
Implementacija binarnog stabla pomoču polja
struct telem{
int vrijednost1;
bool vrijednost2;
};
struct tbin_stablo{
telem elementi[10000];
};
tbin_stablo T;
void InitB(int s,tbin_stablo &bin_stablo){
DeleteB(1,bin_stablo);
bin_stablo.elementi[1].vrijednost1=s;
bin_stablo.elementi[1].vrijednost2=true;
}
int ParentB(int a,tbin_stablo &bin_stablo){
if(a==1)
return -1;
else
return a/2;
}
int LeftChildB(int a,tbin_stablo &bin_stablo){
if(bin.stablo_elementi[a*2].vrijednost2==false)
return -1;
else
return a*2;
}
int RightChildB(int a,tbin_stablo &bin_stablo){
if(bin_stablo.elementi[a*2+1].vrijednost2==false)
return -1;
else
return a*2+1;
}
void CreateLeftB(int s,int a,tbin_stablo &bin_stablo){
if(bin_stablo.elementi[a*2].vrijednost2==true)
cout<<"Element postoji!"<<endl;
else{
bin_stablo.elementi[a*2].vrijednost1=s;
bin_stablo.elementi[a*2].vrijednost2=true;
cout<<"Napravljeno!"<<endl;
}
}
void CreateRightB(int s,int a,tbin_stablo &bin_stablo){
if(bin_stablo.elementi[a*2+1].vrijednost2==true)
cout<<"Element postoji!"<<endl;
else{
bin_stablo.elementi[a*2+1].vrijednost1=s;
bin_stablo.elementi[a*2+1].vrijednost2=true;
cout<<"Napravljeno!"<<endl;
}
}
int LabelB(int a,tbin_stablo &bin_stablo){
return bin_stablo.elementi[a].vrijednost1;
}
void ChangeLabelB(tip s,int a,tbin_stablo &bin_stablo){
bin_stablo.elementi[a].vrijednost2=s;
cout<<"Promijenjeno!"<<endl;
}
int RootB(tbin_stablo &bin_stablo){
if(bin_stablo.elementi[2].vrijednost2==false && bin_stablo.elementi[3].vrijednost2==false)
return -1;
else
return 1;
}
void DeleteB(int a,tbin_stablo bin_stablo){
if(bin_stablo.elementi[a*2].vrijednosst2==true)
DeleteB(a*2,Stablo);
if(bin_stablo.elementi[a*2+1].vrijednost2==true)
DeleteB(a*2+1,Stablo);
bin_stablo.elementi[a].vrijednost2=false;
}
//Moja implementacija se ne razlikuje previe od drugih kolega i kolegi. Razlika je u imenima varijabli i funkcija. Vidjela sam da neki imaju funkcije napisane na hrvatskom jeziku. Ja imam samo implementaciju pomoću polja




There are currently no comments for this snippet.