vabè sembra ovvio, programmazione ricordiva
crea una funzione che testi il valore nuovo con quello del puntatore root,
del tipo
void funzione(struct elem *nuova_strut, struct elem *root)
quindi una volta che hai testato la info contenuta nel root e quella nellanuova struttura puoi decidere se posizionare a destra o sinistra la nuova struttura, e quindi puoi avere sostanzialmente 2 casi [4 per l'esatezza, ma generalizziamo]
supponiamo che la nuova struttura deve essre posizionata a destra e che la struttura sia di questo genere:
Codice PHP:
struct elem
{
int info;
struct elem *sinistra, *destra;
}
[list=1][*] root->destra e' uguale a NULL
assegni semplicemente
root->destra=nuova_strut
[*] root->destra e' diverso da NULL
richiami la stessa funzione in questo modo:
funzione(*nuova_strut,*root->destra)[/list=1]
codice:
Nota:
In caso la struttura la vuoi creare direttamente nella funzione madre
puoi seguire sempre questo discorso creando una funzione ausiliaria
che ti permette di fare queto gioco.
Ricoda di mettere a NULL *sinistra e *destra della nuova struttura,
altrimenti so casini :stordita:
_______________________________________
Spero di esserti stato utile, buon lavoro