View Single Post
Old 28-11-2007, 15:19   #2
Furla
Senior Member
 
Iscritto dal: Feb 2004
Messaggi: 1454
il modo migliore è son-brother, ma da come descrivi la struct sembra sia già in quella forma. quindi il tuo albero generico è già memorizzato in una struttura dati ad albero binario, devi solo imparare ad usarla.

un albero son-brother, come dice il nome stesso, è un albero in cui ogni nodo punta ad un figlio e ad un fratello. di solito a sinistra c'è il figlio e a destra il fratello. in c la struct sarebbe tipo questa
Codice:
struct nodo 
{
 int label;
 nodo* son;
 nodo* brother;
}
ovviamente un nodo che è l'ultimo dei suoi fratelli avrà puntatore destro nullo, mentre un nodo senza figli avrà puntatore sinistro nullo.
il risultato è questo (le frecce orizontali indicano il puntamento di destra, ovvero ai fratelli, quelli verticali indicano il puntamento a sinistra, ovvero ai figli):


Ultima modifica di Furla : 28-11-2007 alle 15:33.
Furla è offline   Rispondi citando il messaggio o parte di esso