【发布时间】:2020-07-28 11:29:03
【问题描述】:
我需要一些帮助来解释为什么 bst 中的插入对以下代码不起作用。关于java如何传递我不知道的参数有一些概念吗?
public void insert(int input){
insert(root, input);
}
private void insert(Node node, int input){
Node new_node = new Node(input);
if (node == null) {
node = new_node;
}
else if (input == node.data) {
System.out.println("input exists");
}
else {
if (input < node.data) {
insert(node.left, input);
}
else{
insert(node.right, input);
}
}
}
【问题讨论】:
-
参数
Node node是一个局部变量。重新分配不会有效果。 Java 是按值调用的。 -
你也给null赋值,它就像一个浮动节点,不附加任何东西。
-
谢谢@f1sh,这真的很有帮助
标签: java data-structures