Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

arbre n-aire, parcours

22 views
Skip to first unread message

Mihamina Rakotomandimby (R12y)

unread,
Jan 9, 2009, 10:09:14 AM1/9/09
to
Bonjour,
Je me suis fixé un petit exercice personnel qui au début me semblait
réglé nasodigitalement, mais finalement c'est assez compliqué (pour
moi): Utiliser une fonction recursive pour retourner un arbre n-aire,
mais en le parcourant. C'est à dire que je m'autorise l'utilisation d'un
arbre temporaire/tampon qui sera l'arbre à retourner.

Langage utilisé: OCaml (ça fait partie de ma contrainte).

Apres plusieurs essais infructueux, je me suis dit qu'il fallait dans un
premier temps avoir la bonne méthode, d'ou mon post ici.

La fonction recursive prendrait comme argument un arbre. Mais dès la
premiere recursion, elle serait confrontée à une liste (les "n" feuilles).

Donc ma structure de données est inadaptée. En meme temps, je ne vois
pas comment je peux faire autrement. Auriez-vous des pistes?

Ma tentative:
http://groups.google.com/group/fr.comp.lang.caml/msg/9e645e3bed24a2e9

Wykaaa

unread,
Jan 10, 2009, 5:01:58 AM1/10/09
to
Mihamina Rakotomandimby (R12y) a écrit :

En Java, le parcours récursif d'un arbre n-aire va donner quelque chose
comme :
public void parcourir(NoeudArbre parent) {
int nombreDeFils = noeudCourant.obtenirNombreDeFils();
for (int i = 0 ; i < nombreDeFils ; i++) {
NoeudArbre fils = parent.obtenirFils(i);
parcourir(fils);
}
}

Eul_Bofo

unread,
Feb 3, 2009, 12:58:40 PM2/3/09
to
Le Fri, 09 Jan 2009 18:09:14 +0300, Mihamina Rakotomandimby (R12y) a
écrit
 :

Le Fri, 09 Jan 2009 18:09:14 +0300, Mihamina Rakotomandimby (R12y) a
écrit
 :

Je veux bien t'aider, mais je ne comprends pas bien ton problème :

1) quelle est la structure de ton arbre ?

2) quelle relation permet de savoir où ajouter des fils (le pluriel de
fil, ou un rejeton ???) ?

3) que veux-tu faire exactement ?

Pour explorer un arbre n-aire, on construit en général une fonction
auxiliaire qui explore la liste des fils d'un noeud, et qui appelle la
fonction principale pour explorer chaque fils (qui est un arbre).

Donc, si je connais ton sujet, ça m'aiderait à t'aider !

\bye

PS : réponds sur mon adresse e-mail, en enlevant "nospam", je ne lis pas
régulièrement ce niouzegroupe.

--

Nicolas FRANCOIS | /\
http://nicolas.francois.free.fr | |__|
X--/\\
We are the Micro$oft. _\_V
Resistance is futile.
You will be assimilated. darthvader penguin

0 new messages