Tree traversal algorithms are easy. Let’s see the Python implementation of these three types of tree traversal in the recursive way.
Click here to see the iterative implementation of tree traversals.
TreeNode Class
class TreeNode: def __init__(self, val): self.val = val self.left = None self.right = None
Pre Order Traversal
def preorder_traversal(root): if root is None: return print(root.val) preorder_traversal(root.left) preorder_traversal(root.right)
In Order Traversal
def inorder_traversal(root): if root is None: return preorder_traversal(root.left) print(root.val) preorder_traversal(root.right)
Post Order Traversal
def postorder_traversal(root): if root is None: return preorder_traversal(root.left) preorder_traversal(root.right) print(root.val)