我正在测试main()中的一些代码,由于某种原因,我得到“7”而不是“7 8”。这是二进制搜索树的一个非常基本的实现,我无法弄清楚问题是什么。
public class BSTNode{
public static void main(String [] args) {
BSTNode root = new BSTNode(7);
BSTNode.insert(root, 8);
BSTNode.print(root);
}
public Integer val;
public BSTNode left = null;
public BSTNode right = null;
public BSTNode(Integer val) {
this.val = val;
}
public static void print(BSTNode root){
if(root == null) return;
print(root.left);
System.out.print(root.val + " ");
print(root.right);
}
public static void insert(BSTNode root, Integer val){
if(root == null) root = new BSTNode(val);
else {
if(val <= root.val) insert(root.left, val);
else insert(root.right, val);
}
}
}