Comment appliquer le pattern container à d'autres structures récursives (arbres) ?
TreeContent<E> + classe container Tree<E> pour les méthodesAppliquer le pattern container à un arbre binaire pour lui ajouter des méthodes dynamiques.
Appliquer le pattern container à un arbre binaire pour lui ajouter des méthodes dynamiques.
Le même schéma s'applique : TreeContent<E> stocke la structure récursive de l'arbre (valeur, gauche, droit), et Tree<E> est le container public portant les méthodes dynamiques.
class TreeContent<E> avec les champs E value, TreeContent<E> left, TreeContent<E> right et le constructeur.class Tree<E> avec un champ TreeContent<E> content ; content == null = arbre vide.size(), depth(), value()…) sur le container en testant this.content == null pour le cas arbre vide.Cherche chaque exercice au brouillon, puis coche “j'ai réussi” si tu as trouvé la bonne démarche. Utilise le bouton aide si tu as besoin d'un coup de pouce.
Définir la paire TreeContent<E> / Tree<E> pour un arbre binaire générique, et implémenter la méthode size().
Implémenter la méthode depth() (profondeur maximale) sur le container Tree<E>.
Implémenter value() sur Tree<E> et montrer que le même pattern container s'applique à un arbre n-aire.