Heu d’implementar el recorregut en amplada d’un arbre binari. Com a entrada hi haurà la mida de l’arbre i els nodes de l’arbre binari en postordre. Com a sortida es mostrarà l’estructura de l’arbre binari seguit del recorregut en amplada (o per nivells) del mateix.
Com a entrada hi haurà la mida de l’arbre i els nodes de l’arbre
binari en postordre. Per cada node s’indica el seu valor i el nombre de
fills (2 fills, -1 indica un fill esquerra, 1 indica un fill dret o 0
fills). Podeu utilitzar l’operador >> definit dins la
classe arbreBin per llegir l’arbre binari.
Com a sortida es mostrarà l’estructura de l’arbre binari (podeu
utilitzar l’operador << definit dins la classe
arbreBin) seguit d’una línia en blanc i del recorregut en
amplada (o per nivells) del mateix precedit per text "Amplada: ".
Cal fer servir la classe arbreBin que us donem. Us
recomanem que guardeu el recorregut en amplada en una list
i desprès useu l’operador << definit dins el mòdul
listIOint per mostrar la llista a la sortida.
Heu d’enviar el fitxer amb la solució program.cpp
comprimida en un fitxer .tar:
tar cvf program.tar program.cpp
Observeu que per compilar us donem el Makefile i els
mòduls arbreBin i ListIOint.
Input
7 2 0 6 0 7 0 4 2 5 0 3 2 1 2
Output
[1]
\__[3]
| \__[5]
| | \__.
| | \__.
| \__[4]
| \__[7]
| | \__.
| | \__.
| \__[6]
| \__.
| \__.
\__[2]
\__.
\__.
Amplada: [1,2,3,4,5,6,7]
Input
7 2 0 7 0 4 1 6 0 5 -1 3 2 1 2
Output
[1]
\__[3]
| \__[5]
| | \__.
| | \__[6]
| | \__.
| | \__.
| \__[4]
| \__[7]
| | \__.
| | \__.
| \__.
\__[2]
\__.
\__.
Amplada: [1,2,3,4,5,7,6]