PARCOURS D'UN ARBRE

Messages postés
1137
Date d'inscription
lundi 17 novembre 2003
Statut
Membre
Dernière intervention
23 janvier 2016
- - Dernière réponse : krissssss
Messages postés
88
Date d'inscription
jeudi 26 décembre 2002
Statut
Membre
Dernière intervention
2 janvier 2007
- 2 janv. 2007 à 21:23
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/40944-parcours-d-un-arbre

krissssss
Messages postés
88
Date d'inscription
jeudi 26 décembre 2002
Statut
Membre
Dernière intervention
2 janvier 2007
-
Le construction que tu vois est faisable.
n0 est un objet automatique.
Et l'affectation qui est apparente n'en est pas une, c'est un appel au constructeur par copie.

Quant au t->setRacine(n0), c'est justement l'idée qu'un arbre binaire est composé de sous arbres gauches et droits qui peuvent êtres vides.

Quant au tuto j'en ai lu assez.

Merci pour le commentaire.
yann_lo_san
Messages postés
1137
Date d'inscription
lundi 17 novembre 2003
Statut
Membre
Dernière intervention
23 janvier 2016
17 -
Qu'est ce donc cette construction ?
Node n0 = Node(); /* Appel du constructeur */
n0.setValeur('*');

pourquoi :
Tree* t = new Tree();
t->setRacine(n0);
Autant faire un constructeur qui prend un node !

La classe node ne sert à rien dans ton cas, tu pouvais l'intégrer dans le tree, surtout que la donnée est un char ! Pas de template ici...

Enfin le constructeur de copie de ton arbre me parait très très louche, pas testé le code mais bon, c'est bizarre.

Mais je te mets quant même 5/10 pour t'encourager.
Et je te conseille un tuto sur les ABR (arbres binaires de recherche) qui implémentent ce problème d'une façon tellement plus fluide et logique, surtout quant on pense à la réutilisation, pour ce code tu ne pourras jamais le réutiliser ou que ce soit.

Bonne continuation...