You are on page 1of 1

On suppose que lon insre les lments 15 6 3 18 4 7 13 9 17 2 20 dans cet ordre dans un arbre binaire de recherche initialement vide.

1. // Dessiner larbre ainsi form, et crer un arbre de type arbre_binaire qui le

reprsente.
2. // Quest ce passe t-il si on insre des lments dans lordre croissant ? 3. Ecrire une fonction est_arbre_recherche qui prend en paramtre un arbre binaire

de type arbre_binaire et qui dtermine si cet arbre est un arbre binaire de recherche
4. Ecrire une fonction tiquette_minimum qui prend en paramtre un arbre_binaire

de recherche de type arbre_binaire et retourne le minimum des tiquette de et arbre.


5. Ecrire une fonction nud_recherche qui prend en paramtre une valeur dtiquette

n et un arabre_binaire de recherche A de type arbre_binaire et qui retourne ladresse du nud et tiquet par n (sil existe).
6. Ecrire une fonction tiquette_successeur qui prend en paramtre une valeur

dtiquette n et un arbre binaire de recherche A de type arbre_binaire et qui retourne la plus petite tiquette suprieur n.
7. Ecrire une fonction nud_compte qui prend en paramtre un arbre binaire de type

arbre_binaire et qui calcule le nombre de nud de cet arbre.


8. Ecrire une fonction insrer qui prend en paramtre une valeur dtiquette n et un

arbre binaire de recherche A qui retourne larbre A dans lequel ltiquette n a t insr.
9. Ecrire une fonction duplique qui prend en paramtre un arbre binaire de type arbre

binaire et qui retourne larbre binaire dupliqu pass en paramtre.


10. Ecrire une fonction parcours largeur qui prend en paramtre un arbre binaire de

type arbre_binaire et parcours larbre binaire en largeur en chargeant les tiquettes des diffrents nuds dans un tableau dentier.
11. Ecrire une fonction arbre_fusion qui prend en paramtre deux arbre binaire de

recherche A et B et qui retourne le nouvel arbre binaire de recherche fusionn.


12. Ecrire la fonction main() qui permet de tester ces fonctions.