summaryrefslogtreecommitdiff
path: root/rushs/evalexpr/binary_tree_dynamic/binary_tree.h
diff options
context:
space:
mode:
Diffstat (limited to 'rushs/evalexpr/binary_tree_dynamic/binary_tree.h')
-rw-r--r--rushs/evalexpr/binary_tree_dynamic/binary_tree.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/rushs/evalexpr/binary_tree_dynamic/binary_tree.h b/rushs/evalexpr/binary_tree_dynamic/binary_tree.h
new file mode 100644
index 0000000..a08e4ef
--- /dev/null
+++ b/rushs/evalexpr/binary_tree_dynamic/binary_tree.h
@@ -0,0 +1,22 @@
+#ifndef BINARY_TREE_H
+#define BINARY_TREE_H
+
+struct binary_tree
+{
+ int data;
+ struct binary_tree *left;
+ struct binary_tree *right;
+};
+
+int size(const struct binary_tree *tree);
+int height(const struct binary_tree *tree);
+void dfs_print_prefix(const struct binary_tree *tree);
+void dfs_print_infix(const struct binary_tree *tree);
+void dfs_print_postfix(const struct binary_tree *tree);
+int is_perfect(const struct binary_tree *tree);
+int is_complete(const struct binary_tree *tree);
+int is_degenerate(const struct binary_tree *tree);
+int is_full(const struct binary_tree *tree);
+int is_bst(const struct binary_tree *tree);
+
+#endif /* !BINARY_TREE_H */