#include #include typedef struct Cvor{ int podatak; struct Cvor *levi; struct Cvor *desni; }Cvor; void dodaj(Cvor **glava, int vrednost, int nivo){ if(*glava == NULL){ *glava = (Cvor*) malloc(sizeof(Cvor)); (*glava)->podatak=vrednost; (*glava)->levi = (*glava)->desni = NULL; printf("Dodali smo broj %d na %d.nivo\n", vrednost, nivo); return; } if (vrednost > (*glava)->podatak) dodaj(&((*glava)->desni), vrednost, nivo+1); else dodaj(&((*glava)->levi), vrednost, nivo+1); } void dodajIBrojiNivo(Cvor **glava, int x) { dodaj(glava,x,0); } void Ispis(Cvor *glava){ if (glava==NULL) return; Ispis(glava->levi); printf("%d ", glava->podatak); Ispis(glava->desni); } int main(){ Cvor *glava = NULL; dodajIBrojiNivo(&glava, 100); dodajIBrojiNivo(&glava, 50); dodajIBrojiNivo(&glava, 70); dodajIBrojiNivo(&glava, 120); dodajIBrojiNivo(&glava, 150); Ispis(glava); return 0; }