1. What is Binary tree?
A binary tree is a tree data structure in which each node has at most two children, which are referred to as the left child and the right child.
2.Depth-first
There are three types of depth-first traversal: pre-order, in-order and post-order. For a binary tree, they are defined as operations recursively at each node, starting with the root node as follows:
- Pre-order:Visit the root, traverse the left subtree, travers the right subtree.
ABDHECFG
- In-order:Traverse the left subtree, visit the root, traverse the right subtree.
HDBEAFCG
- Post-order:Traverse the left subtree, traverse the right subtree, visit the root.
HDEBFGCA
3. Breadth-first
Trees can also be traversed in level-order, where we visit every node on a level before going to a lower level. This search is referred to as breath-first search, as the search tree is broadened as much as possible on each depth before making going to the next depth.