Salve a tutti!
Sto cercando di risolvere il seguente problema:
Scrivere una routine che, dato in imput un puntatore alla radice di un albero binario di caratteri, stampi tutti i cammini radice-foglia.
Io ho usato una struttura del genere:
codice:
struct nodo{
char inf;
struct nodo *sx;
struct nodo *dx; };
Ho provato a scrivere la seguente funzione:
codice:
struct nodo *stampaCammini(struct nodo *p){
if(p!=NULL){
printf("%c",p->inf);
p->sx=stampaCammini(p->sx);
p->dx=stampaCammini(p->dx);
if(p->sx==NULL && p->dx==NULL)
return(p)
}
else printf("\n");
return(p);
}
però questa funzione mi stampa solo il primo cammino e poi i nodi rimanenti, senza quindi svolgere il compito di stampare tutti i cammini radice-foglia.
Non so come procedere.
Ringrazio in anticipo chiunque abbia la pazienza di aiutarmi!