Originariamente inviato da vfldj
Per esempio dato quest'albero

treeEsempio

il metodo mi deve restituire 3
Ok, quello che vuoi è il primo livello al quale compare una foglia.

Io scriverei una procedura ricorsiva con 3 parametri: il nodo da visitare (N), la sua altezza (H) e il livello minimo con almeno una foglia trovato fin'ora (MIN).
La procedura farebbe:
- se N è una foglia: se H è minore di MIN, allora MIN prende il valore di H, altrimenti la procedura termina;
- la procedura si chiama ricorsivamente per ognuno dei figli del nodo specificato, passando ad ogni chiamata il figlio, H+1 e MIN.

Non l'ho provata, è solo un'idea.