Vous êtes sur la page 1sur 2

Exercice 5 :

TD : Les arbres binaires Ecrire une fonction hauteur (A) qui renvoie le la hauteur d'un arbre
binaire.
Exercice 1. Réflexion sur les arbres binaires
Exercice 6:
1. Quelle est la hauteur maximale d’un arbre binaire à n nœuds ?
Écrivez une fonction qui retourne vrai si l'arbre binaire donné est
2. Quel est le nombre maximal de feuilles d’un arbre de hauteur h ?
SommeEnfants sinon faux. Un SommeEnfants est un arbre binaire où la
3. Quel est le nombre maximal de nœuds d’un arbre de hauteur h ?
valeur d'un nœud est égale à la somme des nœuds présents dans son
4. Quelle est la hauteur minimale d’un arbre de n nœuds ?
sous-arbre gauche et son sous-arbre droit. Un arbre vide est
5. Quel est le nombre maximal de nœuds au niveau k dans un arbre
SommeEnfants et la somme d'un arbre vide peut être considérée comme
binaire ?
0. Un nœud feuille est également considéré comme SommeEnfants.
6. Quelle est la particularité du nombre de nœuds des arbres
binaires complets ? (Rmq : un arbre binaire complet est soit une Exemple :
feuille soit un nœud dont les deux fils sont des arbres binaires
complets.)
7. Quel est le nombre de feuilles d’un arbre binaire complet à n
nœuds ?

Exercice 2 :

Ecrire une fonction noeuds(A) qui renvoie le nombre de nœuds d'un arbre
binaire.

Exercice 3 :

Ecrire une fonction feuilles(A) qui renvoie le nombre de feuilles d'un arbre
SommeEnfants(a) = True
binaire.

Exercice 4 : Exercices 7 :
Ecrire une fonction liste_feuilles(A) qui renvoie le la liste des feuilles d'un Écrire une fonction "complet(hauteur, racine)" créant un arbre complet
arbre binaire. (tous les niveaux sont remplis) d’une hauteur donnée. On s’efforcera de
distribuer des étiquettes de façon injective.

1
Exemple : complet(3, 1) doit créer l'arbre suivant : Exercice 12:

Un arbre équilibré permet de conserver une complexité algorithmique


constante pour certaines opérations. Or l'équilibre de l'ABR n'est pas
garanti. Il existe d'autres structures d'arbres pour ça.

Pourtant on vous demande dans certains tests de vérifier que votre ABR
est équilibré.

La définition communément admise de l'équilibre d'un arbre est que la


hauteur des deux sous-arbres de chaque nœud ne peut excéder 1.

Exercices 8 :

Écrire une fonction calculant le miroir d’un arbre donné (au sens d’une
symétrie par rapport à un axe vertical).

Les arbres binaires de recherche :


Exemple d'un arbre équilibré
Exercice 9 :

Ecrire une fonction qui renvoie la valeur minimale d'un arbre binaire de
recherche non vide.

Exercice 10 :

Ecrire une fonction qui renvoie la valeur maximale d'un arbre binaire de
recherche non vide.

Exercice 11:
Exemple d'un arbre non équilibré
Ecrire une fonction rechercher(A, e) qui recherche l'objet e dans l'arbre
binaire de recherche A. La fonction reture True si il existe False si non. Ecrire une fonction check(A) qui vérifier si un arbre binaire de recherche A
est équilibré.

Vous aimerez peut-être aussi