Java 在二叉树中添加节点值
如何打印二叉树中节点下的值之和?以下是我目前掌握的情况:Java 在二叉树中添加节点值,java,node.js,recursion,sum,binary-tree,Java,Node.js,Recursion,Sum,Binary Tree,如何打印二叉树中节点下的值之和?以下是我目前掌握的情况: public int sumT(Node nodo, int sum) { if (nodo == null) { return 0; } else { int sum = suma + nodo.getLeft().getValor(); int sum1 = sumT(nodo.getLeft(), sum); int sum2 = sumT(nodo.g
public int sumT(Node nodo, int sum) {
if (nodo == null) {
return 0;
} else {
int sum = suma + nodo.getLeft().getValor();
int sum1 = sumT(nodo.getLeft(), sum);
int sum2 = sumT(nodo.getRight(), sum1);
return sum2;
}
}
这应该是正确的。因此,您不必将sum设置为sumT中的一个参数。当sum已经是sumT的一个参数时,您可以声明
int sum
。suma
在我看来并不存在。在我看来,当您击中一个叶节点(或没有左分支的任何节点)时,您将在nodo.getLeft().getValor()处得到一个异常
在下一行的递归调用测试空节点之前。
public int sumT(Node nodo) {
if (nodo == null)
return 0;
return sumT(nodo.getLeft()) + sum(nodo.getRight()) + nodo.getValor();
}