Remplacement d'un mot par un arbre
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:
1 2 3 4 5 6 7
|
typedef struct noeud
{
char *mot;
struct noeud *gauche;
struct noeud *droit;
}Noeud,*Arbre; |
Code:
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