Posez votre question Signaler

Arbre n-aire

miro - Dernière réponse le 4 août 2009 à 10:37
Bonjour,
je veux réaliser un recherche selon un arbre n-aire en php ,j'ai pas arrivé à résoudre mon problème puisque j'ai pas une grande connaissance sur l'arbre n-aire.
merci pour votre aide
Lire la suite 

Arbre n-aire »

5 réponses
Réponse
+0
moins plus
Bah indépendamment du langage, un arbre n-aire est souvent représenté à l'aide d'une structure de noeud contenant un ensemble de nœuds successeurs (que l'on peut par exemple stocker dans un tableau).

Par exemple en C:
typedef struct _treenode_t{
  void *data; /**< La donnée stockée dans le noeud */
  struct _treenode_t **nodes; /**< Les nœuds fils */
} treenode_t;

typedef _tree_t{
  treenode_t root; /**< Le nœud racine */
} tree_t

Ensuite c'est un simple parcours récursif... Pour la syntaxe PHP désolée, mais ça fait bien longtemps que je n'en ai pas fait. Essaye de faire une petite recherche google il y a sûrement possibilité de trouver des exemples.

Bonne chance
Ajouter un commentaire
Réponse
+0
moins plus
bonjour,
j'ai beaucoup cherché mais j'ai pas une chose importante.
en tous cas merci pour votre aide
Ajouter un commentaire
Réponse
+0
moins plus
Ah ?
http://www.google.com/...

Ben il suffit de faire un objet php en C qui stocke un array (les fils)...

Bonne chance
miro - 4 août 2009 à 10:22
bonjour,
je n'est ce pas comment créer un objet en php au lieu d'une structure.
par exemple cette structure:
struct personne{
char [20] nom;
char [20] prenom;
}
Ajouter un commentaire
Réponse
+0
moins plus
http://www.commentcamarche.net/contents/php/phpclass.php3

Un truc du genre :
class treenode_t{
  var $nom;
  var $prenom;
  var $nodes;
}

... et quand tu fais un "treenode = new treenode_t" il faut bien penser à faire un "t->nodes = new array()" ou quelque chose dans ce goût. Désolée je ne fais pas de PHP.

Bonne chance
Ajouter un commentaire
Ce document intitulé « arbre n-aire » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?