Ragazzi,

Mi sto dilettando sugli alberi binari, e sto facendo una valanga di esercizi che mi scarico di volta in volta dalla rete... Ne ho, però, trovato uno che mi sta "incastrando" perchè non riesco a trovare un algoritmo giusto per risolverlo, dunque il prototipo della funzione è questo:

int OrderStatistic(TREENODEPTR t, int *i)

(TREENODEPTR è un puntatore ad una struttura TREE [la classica struct dell'albero binario con un intero, un puntatore destro ed uno sinistro])

Dunque la funzione deve trovare l'iesimo elemento più piccolo dell'albero:

se i = 1 l'elemento più piccolo
se i = 2 il secondo e così via

Con una "marea" di funzioni ausiliari magari si farebbe, ma a qualcuno non viene in mente un metodo + furbo ?

Grazie