Adloun

NSI (terminale) · Chapitre 3 · Exercice de TD

Valeur maximale d'un arbre binaire

Les arbres · niveau 2

Énoncé

Valeur maximale d'un arbre binaire.

Écrire une fonction maximum(arbre) qui renvoie la plus grande valeur d'un arbre binaire quelconque (non nécessairement un ABR) contenant des entiers, en supposant l'arbre non vide.

Corrigé

On compare la valeur de la racine aux maximums des deux sous-arbres. Pour gérer les sous-arbres vides, on leur attribue une valeur « neutre » très petite.


def maximum(arbre):
    m = arbre.valeur
    if arbre.gauche is not None:
        m = max(m, maximum(arbre.gauche))
    if arbre.droit is not None:
        m = max(m, maximum(arbre.droit))
    return m

Comme on parcourt tous les nœuds, le coût est . Remarque : dans un ABR, le maximum est plus simple à trouver, c'est le nœud le plus à droite, idée symétrique de celle employée pour supprimer une valeur dans un ABR.

100 % gratuit

Essaie le suivant avec le tuteur

Faire l'exercice suivant avec le tuteur

Sans compte : le cours, le premier QCM, 2 minutes de podcast et de vidéo et un exercice avec le tuteur. Pour tout le reste : inscription gratuite en 30 secondes, sans carte bancaire.

Le cours du chapitre · Tous les exercices du chapitre

Exercice suivant avec le tuteur →