| #ifndef _BIN_TREES_H |
| #define _BIN_TREES_H |
| |
| |
| struct bin_tree_struct { |
| int data; |
| char c_data; |
| struct bin_tree_struct *left; |
| struct bin_tree_struct *right; |
| }; |
| |
| typedef struct bin_tree_struct * tree_ptr; |
| |
| |
| struct stack_struct { |
| tree_ptr data; |
| struct stack_struct *next; |
| }; |
| |
| |
| void search_tree_insert (tree_ptr *, int); |
| void pre_order_traverse (tree_ptr); |
| void pre_order_traverse_no_recurse (tree_ptr); |
| void in_order_traverse (tree_ptr); |
| void in_order_traverse_no_recurse (tree_ptr); |
| void push (struct stack_struct **, tree_ptr); |
| tree_ptr pop (struct stack_struct **); |
| |
| #endif /* _BIN_TREES_H */ |