diff --git a/Program's_Contributed_By_Contributors/Python_Programs/Binary Tree.py b/Program's_Contributed_By_Contributors/Python_Programs/Binary Tree.py new file mode 100644 index 0000000000..40f815f0a1 --- /dev/null +++ b/Program's_Contributed_By_Contributors/Python_Programs/Binary Tree.py @@ -0,0 +1,36 @@ +class Node: + def __init__(self, data): + self.left = None + self.right = None + self.data = data + + def insert(self, data): +# Compare the new value with the parent node + if self.data: + if data < self.data: + if self.left is None: + self.left = Node(data) + else: + self.left.insert(data) + elif data > self.data: + if self.right is None: + self.right = Node(data) + else: + self.right.insert(data) + else: + self.data = data + +# Print the tree + def PrintTree(self): + if self.left: + self.left.PrintTree() + print( self.data), + if self.right: + self.right.PrintTree() + +# Use the insert method to add nodes +root = Node(12) +root.insert(6) +root.insert(14) +root.insert(3) +root.PrintTree()