- バイナリツリーのノードを表すクラスを作成します。
class Node:
def __init__(self, data):
self.data = data
self.left = None
self.right = None
- ツリーに新しい要素を挿入する関数を作成します。
def insert(root, data):
if root is None:
root = Node(data)
else:
if data < root.data:
if root.left is None:
root.left = Node(data)
else:
insert(root.left, data)
else:
if root.right is None:
root.right = Node(data)
else:
insert(root.right, data)
- ツリーを作成し、要素を挿入します。
# ツリーのルートノードを作成します。
root = Node(50)
# 要素を挿入します。
insert(root, 30)
insert(root, 20)
insert(root, 40)
insert(root, 70)
insert(root, 60)
insert(root, 80)
- ツリー内の要素を表示する関数を作成します。
def inorder_traversal(node):
if node:
inorder_traversal(node.left)
print(node.data)
inorder_traversal(node.right)
- ツリー内の要素を表示します。
inorder_traversal(root)
これらのコーディング例を使用すると、Pythonでバイナリツリーに要素を挿入することができます。ツリーの要素を表示することで、正しく挿入されたかどうかを確認できます。