estoy intentando programar un método en java que sume todos los elementos de un arbol.
Ahora mismo tengo lo siguiente:
Código:
No consigo que sume todos los elementos./** * Método que suma el valor de los nodos a partir del nodo pasado por parámetro. Si se especifica el nodo * raíz del árbol, entonces se obtiene la suma de todos los nodos del árbol * @param n Nodo a partir del cual se suma el subárbol * @return La suma de los valores de los nodos del subárbol */ private int getAddition (Node n) { int suma=n.value; if(n.left==null && n.right==null){ return suma; }else{ if(n.right==null){ getAddition(n.left); }else if(n.left==null){ getAddition(n.right); }else{ getAddition(n.left); getAddition(n.right); } } return suma; }
Alguien podría echarme una mano?
La clase nodo es la siguiente:
Código:
Muchas gracias.private class Node { // El valor del nodo private Integer value; // Subárboles izquierdo y derecho private Node left, right; // Constructor de la clase public Node (Integer value) { this.value = value; } }
Un saludo.