From 18b53edf4a8b5a31fbc00f63775134a818de7fc6 Mon Sep 17 00:00:00 2001 From: soikk Date: Sat, 30 Oct 2021 17:17:21 +0200 Subject: A simple collection of tree algorithms made while in school (lol) --- include/trees.h | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 include/trees.h (limited to 'include/trees.h') diff --git a/include/trees.h b/include/trees.h new file mode 100644 index 0000000..d4abd40 --- /dev/null +++ b/include/trees.h @@ -0,0 +1,53 @@ +#include +#include + +typedef struct node{ + int val; + struct node *left; + struct node *right; +} node_t; + +typedef struct tree{ + node_t *root; +} tree_t; + + +node_t* createNode(int val); + +tree_t* createTree(); + +int addNode(node_t *node, int val, const char lr); + +int changeNode(node_t *node, int val); + +void printNode(node_t node); + +void printTree(tree_t); + +int nodeDepth(node_t *node); + +int treeDepth(tree_t tree); + +int nodeEndNodeCount(node_t *node); + +int endNodeCount(tree_t tree); + +int nodeContainsN(node_t *node, int n); + +int treeContainsN(tree_t tree, int n); + +int nodeNodeCount(node_t *node); + +int nodeCount(tree_t tree); + +void putNodeInArray(node_t *node, int *array, int *i); + +int putTreeInArray(tree_t tree, int *array); + +void sortArray(int *array, int len); + +void insertInNode(node_t *node, int *array, int *i); + +void insertInTree(tree_t *tree, int *array); + +void sortTree(tree_t *tree); -- cgit v1.2.3