Suma dels nodes d’un arbre binari

Implementar una funció recursiva que, donat un arbre binari d’enters on
cada node té 2 fills o és una fulla, substitueixi els nodes intermitjos
per la suma dels nodes esquerre i dret i les fulles per 0. El codi ha
d’estar correctament documentat amb el Pre, Post, Hipòtesi d’Inducció i
Fita.

    /* Pre: a és un arbre binari d'enters */
    /* Post: el valor de cada node intermig de a se substitueix per 
    la suma del valor del seu fill dret i del fill esquerre. 
    En cas que el node sigui una fulla, el seu valor es posa a 0.*/ 
    void SumNodes(BinaryTree<int> &a);

D’entre els fitxers que s’adjunten a l’exercici també hi ha program.cpp
(programa principal) i Makefile per a compilar. Per a pujar la vostra
solució, heu de crear el fitxer solution.tar així:

    tar cf solution.tar SumNodes.cpp

Entrada

Com a entrada hi haurà un arbre binari on tots els nodes tenen 2 fills o
són una fulla. El primer digit és el nombre de nodes i a continuació,
per a cada node, apareixen el seu valor i un enter que indica si és una
fulla (0) o té dos fills (2), donats en postordre.

Sortida

Com a sortida es mostrarà l’arbre original i, a continuació, l’arbre
resultant de la funció recursiva.

Informació del problema

Autoria: Alejandro Ríos

Generació: 2026-01-25T21:40:25.272Z

© Jutge.org, 2006–2026.
https://jutge.org
