0
私はバイナリツリー(NOT BST)にノードを挿入するコードを書きました。Javaでのバイナリツリーの実装はどれだけメモリ効率が良いですか?
私は、再帰挿入が「ノード」を返すたびに、それが初期ノードに割り当てられることに気付きました。
これは、このツリーのルートのメモリ参照が各挿入の完了時に変更されることを意味しますか? add
内
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;
}