#ifndef BASIC_TREE_H #define BASIC_TREE_H struct queue { struct node *node; struct queue *next; }; struct queue *enqueue(struct queue *queue, struct node *node); struct node *dequeue(struct queue **queue); void queue_destroy(struct queue *queue); struct node { int value; struct node *left; struct node *right; }; struct node *insert(struct node *root, int value); void delete_leaf(struct node *root, int value); struct node *delete_node(struct node *root, int value); void pretty_print(struct node *root); #endif /* ! BASIC_TREE_H */