Suma de tots els nodes d’un arbre binary

Implementa un algorisme recursiu que, donat un arbre binary d’enters,
sumi tots els nodes, deixi el resultat a l’arrel i posi 0 a la resta de
nodes de l’arbre.

    /* Pre: a és un arbre binary d'enters. */
    /* Post: Suma tots els nodes de l'arbre, deixa el resultat a l'arrel i posa un 0 a la resta de nodes */
    void SumTree(BinaryTree<int> &a) {
    }

NOTES IMPORTANTS:

- L’algorisme ha de ser eficient, és a dir, que no realitzi càlculs
  innecessaris.

- Entre els fitxers que s’adjunten en aquest exercici trobaràs el fitxer
  BinaryTree.hpp que conté la implementació de la classe BinaryTree. No
  cal que modifiquis aquest fitxer.

- També trobaràs el fitxer program.cpp i el Makefile per a compilar i
  generar l’executable. El programa principal ja s’encarrega de llegir
  les dades de l’arbre i cridar al mètode indicat. Només cal que
  implementis el mètode SumTree.

- Es valorarà la correctesa i eficiència de la solució així com la
  correcta especificació de la precondició, la postcondició, la hipòtesi
  d’inducció i la funció fita.

- Per a pujar la solució has de crear el fitxer solution.tar així:
  tar cf solution.tar SumTree.cpp

Entrada

Com a entrada hi haurà els nodes de l’arbre en postordre.

Sortida

Com a sortida es mostrarà l’arbre original i l’arbre resultat.

Informació del problema

Autoria: Alejandro Ríos

Generació: 2026-01-25T21:34:21.934Z

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