diff --git a/Data Strucrures/in-order traversal b/Data Strucrures/in-order traversal new file mode 100644 index 0000000..5241237 --- /dev/null +++ b/Data Strucrures/in-order traversal @@ -0,0 +1,44 @@ +class Node: + def __init__(self, data): + self.left = None + self.right = None + self.data = data +# Insert Node + def insert(self, data): + if self.data: + if data < self.data: + if self.left is None: + self.left = Node(data) + else: + self.left.insert(data) + else 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() +# Inorder traversal +# Left -> Root -> Right + def inorderTraversal(self, root): + res = [] + if root: + res = self.inorderTraversal(root.left) + res.append(root.data) + res = res + self.inorderTraversal(root.right) + return res +root = Node(27) +root.insert(14) +root.insert(35) +root.insert(10) +root.insert(19) +root.insert(31) +root.insert(42) +print(root.inorderTraversal(root))