#include struct wezel { int licznik, liczba; struct wezel *prawy; struct wezel *lewy; }; struct wezel* wkorzen = NULL; struct wezel *nowy_wezel(int x) { struct wezel *wsk = malloc(sizeof(struct wezel)); wsk->licznik = 1; wsk->liczba = x; wsk->lewy = NULL; wsk->prawy = NULL; return wsk; } void dodaj(int x) { if(wkorzen == NULL) { wkorzen = nowy_wezel(x); return; } struct wezel *p1 = wkorzen; struct wezel *p2; while(p1 != NULL) { p2 = p1; if(p1->liczba < x) { p1 = p1->prawy; } else if(p1->liczba > x) { p1 = p1->lewy; } else { p1->licznik++; return; } } if(p2->liczba < x) { p2->prawy = nowy_wezel(x); } else { p2->lewy = nowy_wezel(x); } } int main(void) { }