Bonsoir a vous tous,
Voila j'essaye de coder le parcours infixe en iteratif...
Mais je ne trouve pas du tout...
Je mets le code des deux autres parcours pour avoir vos impressions...
Merci d'avance
Prototype des fonctions pour gerer la pile
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44 void affichagePrefixeIt (Arbre a) { if (!a) return; Pile *pile = init (); empiler (a, pile); while (EstVide (pile) == 0) { a = depiler (pile); if (a) { printf ("%d ", a->val); if (a->FilsD) empiler (a->FilsD, pile); if (a->FilsG) empiler (a->FilsG, pile); } } } void affichageInfixeIt (Arbre a) { if (!a) return; Pile *pile = init (); while (a!=NULL) { empiler(a,pile); a=a->FilsG; } while (EstVide (pile) == 0) { a = depiler(pile); printf ("%d ", a->val); a = a->FilsD; while(a) { empiler(a,pile); a = a->FilsG; } } }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 struct Pile *init (); void empiler (Arbre a, Pile *p); Arbre depiler (Pile *p); int EstVide (struct Pile *p);
Partager