ノードを挿入するためには、以下の手順に従います。
- 新しいノードを作成します。新しいノードにはデータを格納し、左右の子ノードへの参照を持たせます。
class Node {
int data;
Node left;
Node right;
public Node(int data) {
this.data = data;
this.left = null;
this.right = null;
}
}
- 挿入する位置を決定します。二分木では、挿入する値が現在のノードの値より小さい場合は左の子ノードに、大きい場合は右の子ノードに進みます。
public Node insertNode(Node root, int data) {
if (root == null) {
root = new Node(data);
return root;
}
if (data < root.data) {
root.left = insertNode(root.left, data);
} else if (data > root.data) {
root.right = insertNode(root.right, data);
}
return root;
}
- ノードを挿入します。挿入する値を引数として、根ノードと一緒に
insertNode
メソッドを呼び出します。
Node root = null;
root = insertNode(root, 10);
これで、二分木に新しいノードが挿入されました。
以上が、Javaで二分木にノードを挿入する基本的な手順です。もちろん、この例では単純な整数値の挿入を扱っていますが、オブジェクトなど他のデータ型でも同様の手順で挿入が可能です。
また、この例では再帰を使用していますが、ループを使った実装も可能です。必要に応じて、自分にとって最適な方法を選択してください。
それでは、二分木にノードを挿入する方法について説明しました。ご質問があればお気軽にどうぞ!