Bonjour,
le code suivant a pour but de remplacer toutes les occurences d'un mot "mot" par l'arbre "arbremot" qui lui est associé dans l'arbre "arbre".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 typedef struct noeud { char *mot; struct noeud *gauche; struct noeud *droit; }Noeud,*Arbre;
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 void Remplace_aux(Arbre *arbre, char *mot, Arbre arbremot) { if(*arbre != NULL) { if(strcmp((*arbre)->mot,mot) == 0) { (*arbre)->mot = arbremot->mot; (*arbre)->gauche = arbremot->gauche; (*arbre)->droit = arbremot->droit; } else { Remplace_aux(&((*arbre)->gauche),mot,arbremot); Remplace_aux(&((*arbre->droit),mot,arbremot); } } } Arbre Remplace(Arbre *arbre, char *mot, Arbre arbremot) { Arbre tmp; tmp = *arbre; Remplacement_aux(&tmp,mot,arbremot); return tmp; }
Est ce que vous pourriez m'indiquer si le code suivant est correcte et comment je dois m'y prendre pour récupérer l'arbre initial (avant les Remplacement).
Merci d'avance






Répondre avec citation
Partager