Afficher un arbre binaire en console
Affichage déjà vu
Dans les exercices précédents, vous avez peut-être utilisé l'affichage d'un arbre binaire en console.
Un affichage simple, peut aider à comprendre la structure d'un petit arbre. C'est désormais à vous de créer une fonction d'affichage simple !
Pour simplifier l'exercice, on représente l'arbre de la gauche vers la droite, comme sur l'exemple suivant :
Exemple de dessin simple
11
75
8
95
39
49
76
19
Les nil ne sont pas dessinés.
On peut toutefois comprendre
la structure de l'arbre !
On tourne juste la tête !
graph LR
A1("95")
A2("75")
A1 --- A2
A3("76")
A1 --- A3
A4("11")
A2 --- A4
A5("8")
A2 --- A5
A6("49")
A3 --- A6
A7("19")
A3 --- A7
A8(" ")
A4 --- A8
A9(" ")
A4 --- A9
B10(" ")
A5 --- B10
B11(" ")
A5 --- B11
B12("39")
A6 --- B12
B13(" ")
A6 --- B13
B14(" ")
A7 --- B14
B15(" ")
A7 --- B15
B16(" ")
B12 --- B16
B17(" ")
B12 --- B17
Exercice
Coder une fonction affiche qui prend ab un arbre binaire en paramètre représenté à l'aide la classe Noeud, ainsi qu'une profondeur p de décalage et qui affiche (avec la fonction print) l'arbre binaire ab comme dans l'exemple précédent.
- Le sous arbre à gauche est représenté en bas, indenté de 4 espaces par rapport à la racine.
- Le sous arbre à droite est représenté en haut, indenté de 4 espaces par rapport à la racine.
- Les nil ne sont pas représentés.
- La racine est indentées de
4 * pespaces. La valeur par défaut est choisie àp=0.
Les tests secrets acceptent les espaces en trop en fin de ligne, ainsi que les lignes vides en trop. Le reste doit être correctement formaté !
# Tests(insensible à la casse)(Ctrl+I)
(Alt+: ; Ctrl pour inverser les colonnes)
(Esc)