【发布时间】:2016-10-28 17:10:45
【问题描述】:
所以我只是编写了在二叉树中插入节点的代码(不是 BST)。
我注意到每次递归插入返回一个“节点”时,它都会被分配给初始节点。
这是否意味着,这棵树的根的内存引用会在每次插入完成时发生变化?
public void add(int data)
{
root=add(root,data);
}
public static BinaryNode add(BinaryNode node, int data) {
if(node==null)
{
node=new BinaryNode(data);
}
else {
///IF not 1st element, flow enters this part
if(node.left==null && node.right==null)
{
node.left=add(node.right,data);
}
else if (node.right == null) {
node.right=add(node.right, data);
} else {
node.left=add(node.left, data);
}
}
return node;
}
【问题讨论】:
标签: java memory binary-tree insertion