2010-06-13 8 views
2

Je dois créer un arbre pouvant contenir jusqu'à n sous-nœuds pour chaque nœud (c'est-à-dire, ce n'est pas un arbre binaire).
Comment faire?Arbre non binaire

Répondre

1

Au lieu d'avoir quelque chose comme ceci:

Node* left; 
Node* right; 

que vous le feriez normalement pour un arbre binaire, vous pouvez faire quelque chose comme:

Node** children; 
int size; 

alors malloc la taille appropriée pour le nombre de pointeurs.

+0

@all merci pour l'aide j'ai développé un code pour n nombre de noeuds avec hepl de info ur –

0

GLib fournit un implementation d'arbres N-ary. Si vous ne pouvez pas utiliser glib, vous devriez chercher une autre bibliothèque qui correspond à vos besoins ou lancer votre propre arbre N-aire. Dans une version simple, un nœud contiendrait une liste ou un tableau lié avec des pointeurs vers d'autres nœuds.