import java.util.*; public class Arbre{ private Noeud racine; private String strArbre; public Arbre(){ } public Arbre(E racine){ this.racine = new Noeud(racine); } public Arbre(Noeud racine){ this.racine = racine; } public void setRacine(E racine){ this.racine = new Noeud(racine); } public Noeud getRacine(){ return this.racine; } public void afficheArbre(){ this.strArbre = ""; this.updateStrArbre(this.racine, 0); System.out.println(this.strArbre); } public void afficheArbreQ2(){ this.strArbre = ""; this.updateStrArbreQ2(this.racine); System.out.println(this.strArbre); } public void afficheArbreQ3(){ this.strArbre = ""; this.updateStrArbreQ3(this.racine); System.out.println(this.strArbre); } private void updateStrArbreQ3(Noeud noeud){ try{ String valeur = noeud.getValue().toString(); if (valeur.equals("x") || valeur.equals("/") || valeur.equals("+") || valeur.equals("-")){ this.strArbre += "("; } else{ this.strArbre += valeur; } List> fils = noeud.getFils(); for (int i=0; i noeud){ try{ this.strArbre += noeud.getValue().toString() + " "; List> fils = noeud.getFils(); for (int i=0; i noeud, int profondeur){ int i; this.strArbre += "\n"; for (i=0; i> fils = noeud.getFils(); for (i=0; i