1 #ifndef _BIN_TREES_H 2 #define _BIN_TREES_H 3 4 5 struct bin_tree_struct { 6 int data; 7 char c_data; 8 struct bin_tree_struct *left; 9 struct bin_tree_struct *right; 10 }; 11 12 typedef struct bin_tree_struct * tree_ptr; 13 14 15 struct stack_struct { 16 tree_ptr data; 17 struct stack_struct *next; 18 }; 19 20 21 void search_tree_insert (tree_ptr *, int); 22 void pre_order_traverse (tree_ptr); 23 void pre_order_traverse_no_recurse (tree_ptr); 24 void in_order_traverse (tree_ptr); 25 void in_order_traverse_no_recurse (tree_ptr); 26 void push (struct stack_struct **, tree_ptr); 27 tree_ptr pop (struct stack_struct **); 28 29 #endif /* _BIN_TREES_H */ 30