【发布时间】:2014-11-13 15:10:45
【问题描述】:
我正在使用递归方法使用键在二叉树中查找节点。当我找到节点时,我将它设置为我的引用变量foundNode 并返回。问题是当我读取对象时,它的值仍然是null。有人可以帮忙吗?
findGivenNode(root, key, foundNode, parentStack);
private boolean findGivenNode(Node node, int key, Node foundNode, Stack<Node> parentStack) {
if (node == null) {
return false;
}
parentStack.add(node);
if (node.getData() == key) {
foundNode = node;
return true;
}
boolean leftReturn = findGivenNode(node.getLeftChild(), key, foundNode, parentStack);
boolean RightReturn = findGivenNode(node.getRightChild(), key, foundNode, parentStack);
if (leftReturn || RightReturn) {
return true;
} else {
parentStack.pop();
return false;
}
}
【问题讨论】:
标签: java recursion data-structures