Il codice che ho scritto secondo me è giusto.

Secondo me c'è un errore da qualche altra parte.

Dopo che componi un albero, fai una funzione di prova che cicla sia il lato sinistro che il lato destro. Escono i valori giusti ?

e poi com'è la struttura di nod ?