summaryrefslogtreecommitdiff
path: root/src/02/01/binary_tree.h
diff options
context:
space:
mode:
authormo khan <mo.khan@gmail.com>2020-07-12 15:58:29 -0600
committermo khan <mo.khan@gmail.com>2020-07-12 15:58:29 -0600
commitf69c64a378bbeab845bd66e100a641a5444ef630 (patch)
tree1590937e37ec268fdb0afd1ec840f51f5f62e503 /src/02/01/binary_tree.h
parent23b4a81bb267e486c7bd1d594c400928af8729c8 (diff)
Delegate to the single traverse function
Diffstat (limited to 'src/02/01/binary_tree.h')
-rw-r--r--src/02/01/binary_tree.h5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/02/01/binary_tree.h b/src/02/01/binary_tree.h
index a8d5fb8..93a6f12 100644
--- a/src/02/01/binary_tree.h
+++ b/src/02/01/binary_tree.h
@@ -6,9 +6,8 @@ struct node {
typedef struct node Node;
typedef void(Visitor)(Node* node);
+enum Traversal { INORDER = 1, PREORDER = 2, POSTORDER = 4 };
Node *initialize(int data);
-void preorder_traversal(Node *node, Visitor visitor);
-void inorder_traversal(Node *node, Visitor visitor);
-void postorder_traversal(Node *node, Visitor visitor);
+void traverse(Node *node, Visitor visitor, enum Traversal traversal);
void destroy(Node *head);