A major operation, which we often apply in a binary tree is the traverse. There are three different methods for traversing a tree:
- Preorder
- Inorder
- Postorder
The following code snippets are these methods in C :
void preorder_traversal(struct node_t * node) { if (node == NULL) return; printf("%dn", node->value); preorder_traversal(node->left); preorder_traversal(node->right); }
void inorder_traversal(struct node_t * node) { if (node == NULL) return; inorder_traversal(node->left); printf("%dn", node->value); inorder_traversal(node->right); }
void postorder_traversal(struct node_t * node) { if (node == NULL) return; postorder_traversal(node->left); postorder_traversal(node->right); printf("%dn", node->value); }