Adloun

Hauteur d'un ABR

Exercice de TD · niveau 3 (difficile) · NSI (terminale), chapitre 9 — La programmation orientée objet

Énoncé

Hauteur d'un ABR.

Ajouter à la classe ABR du cours une méthode hauteur renvoyant la hauteur de l'arbre (un arbre vide a pour hauteur , un arbre réduit à sa racine a pour hauteur ).

Corrigé


def hauteur(self):
    return self._hauteur(self.racine)

def _hauteur(self, noeud):
    if noeud is None:
        return -1
    return 1 + max(self._hauteur(noeud.gauche),
                   self._hauteur(noeud.droit))

# A integrer dans la classe ABR
ABR.hauteur = hauteur
ABR._hauteur = _hauteur

arbre = ABR()
for v in [5, 3, 8, 1, 4, 7]:
    arbre.inserer(v)
print(arbre.hauteur())   # 2

Les autres exercices de ce chapitre Le cours du chapitre

Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.