7Fermer9
veryLe 16/07/2008 à 17:01
Non c'est une strutucre de donée, mais oui ca fait bien comme ca....disons que de toute facon t'es obligé de faire comme ca ( pour vouloir deriver le premier niveau, tu regarde quel est l'operateur le "plus eleve", disons +: ton expression est a+b, alors t'appelles recusrsivement ta fonction pour deriver a, deriver b, et tu renvoie a' + b'. Ca ne boucle pas car y'a des cas genre constante/X où il n'y a pas besoin de faire d'appel recursif )

Un arbre, c'est un truc avec des noeuds qui ont pour fils des noeuds ou des feuilles. Par exemple ca peut ressebler a ca:

        +
     |     |
     *     2
   |   |
   x   5


pour l'expression (5*x) + 2. ( mais ca sert a tout plein d'autres trucs que representer des expression mathematiques )
Typiquement un noeud est qqch comme (+,adresse_fils1,adresse_fils) (ou, sur les languages evolués genre fonctionel, directement le les fils a la place de leur adresse ), etc.

Mais de toute facon même en representant les donnes autrement tu va faire qqch de très semblable ( enfin, tu peux partir du bas si t'a envie et remonter, mais c'est plus complique pour pas mieux .. )

edit: pre pour visualiser l'arbre