Ciao ragazzi,
qualcuno saprebbe dirmi perchè in questa funzione per inserire nuovi nodi in un albero binario non viene mai eseguita l'ultima istruzione (praticamente quando l'albero è vuoto...) e più in generale come potrei modificarla per renderla funzionante?
codice:
struct nodo {
char *parola;
int occorrenze;
struct nodo *left;
struct nodo *right;
struct nodo *father;
};
void TreeInsert(struct nodo *albero, struct nodo *nuovo)
{
if(albero)
if(strcmp(nuovo->parola,albero->parola) == 0)
albero->occorrenze++;
else
if(strcmp(albero->parola,nuovo->parola) < 0)
TreeInsert(albero->left,nuovo);
else
TreeInsert(albero->right,nuovo);
else
albero = nuovo;
}
Grazie a tutti