【发布时间】:2014-07-21 19:10:18
【问题描述】:
每个节点都有一个ArrayList<Node> 的子节点。
叶子已经被评估过。我想逐级为叶子以上的所有节点设置值,所以我必须为某个级别的所有节点设置值才能转到它们的父节点并为它们设置值。
换句话说:1 假设在X 级别的节点设置之前,X-1 级别的节点设置
换句话说2:我需要设置node.evaluation = 1,对于X 层的所有叶子,在我更接近根之前。
如何做到这一点?我在下面尝试过,但似乎是错误的。我现在尝试了一周。
evaluateTree2(root);
....
public void evaluateTree2(Node node){
for(Node descendant : node.children) {
evaluateTree2(descendant);
node.evaluation = 1;
}
}
【问题讨论】:
-
树的底部通常是叶子
-
@martijnn2008 是的,我想从叶子开始并逐级返回根,我需要设置 node.evaluation = 1,对于 X 层上的所有叶子,然后再靠近根.
标签: java recursion tree depth-first-search breadth-first-search