Binary Tree Traversal
There are two main categories of Tree traversal
methods:
- Breadth First Search (BFS) is when the nodes on
the same level are visited before going to the
next level in the tree. This means that the tree
is explored in a more sideways direction. - Depth First Search (DFS) is when the traversal
moves down the tree all the way to the leaf
nodes, exploring the tree branch by branch in a
downwards direction.
There are three different types of DFS traversals:
- pre-order
- in-order
- post-order
Pre-order Traversal of Binary Trees
def preOrderTraversal(node):
if node is None:
return
print(node.data, end=", ")
preOrderTraversal(node.left)
preOrderTraversal(node.right)
In-order Traversal of Binary Trees
def inOrderTraversal(node):
if node is None:
return
inOrderTraversal(node.left)
print(node.data, end=", ")
inOrderTraversal(node.right)
Post-order Traversal of Binary Trees
def postOrderTraversal(node):
if node is None:
return
postOrderTraversal(node.left)
postOrderTraversal(node.right)
print(node.data, end=", ")