Correction TD2 Arbre
Correction TD2 Arbre
Correction TD2 Arbre
Un arbre binaire de recherche est un arbre binaire tel que pour tout nœud N, toutes les valeurs
du sous-arbe gauche de N sont inférieures ou égales à la valeur de N, et toutes les valeurs du
sous-arbre droit de N sont supérieures à la valeur de N
Préfixé : 6 4 1 3 2 58 7 13 11 10 9 12 14
Infixé : 1 2 3 4 5 6 7 8 9 10 11 12 13 14
Postfixé : 2 3 1 5 4 7 9 10 12 11 14 13 8 6
Exercice 3
void print_inorder (node* A) {
if (A != NULL) {
print_inorder(A->left);
printf("%d ",A->key);
print_inorder(A->right);
}
}
Exercice 4
1/ Recherche du minimum dans un arbre binaire de recherche
int minimum (node* A) {
if (A == NULL) {
return -1;
}
if (A->left == NULL) {
return A->key;
}
return minimum(A->left);
}
A->key = val;
supprime(val, A->droite);
return true;
}
else
if (v < A->key)
return supprime(v, A->gauche);
else
return supprime(v, A->droite);
}
//méthode itérative
int * recherche(Arbre *A, int v){
while(A!=NULL && v!=A->val){
if(v > A->val)
A=A-> droite;
else
A=A->gauche;
}
if(A==NULL)
return 0;
else
return 1;
}