diff options
| author | Charles <sircharlesaze@gmail.com> | 2020-02-09 00:49:33 +0100 |
|---|---|---|
| committer | Charles <sircharlesaze@gmail.com> | 2020-02-09 00:49:33 +0100 |
| commit | 329e7a3bde7f206414fe89c9b3ca12d1fc1e1b29 (patch) | |
| tree | 197d37af649baba133259890834f19493b9f6562 /src/bt | |
| parent | 2b254e816835dec4d9d7f3128a9bd37fb13f4c3b (diff) | |
| download | libft-329e7a3bde7f206414fe89c9b3ca12d1fc1e1b29.tar.gz libft-329e7a3bde7f206414fe89c9b3ca12d1fc1e1b29.tar.bz2 libft-329e7a3bde7f206414fe89c9b3ca12d1fc1e1b29.zip | |
Added btree basic
Diffstat (limited to 'src/bt')
| -rw-r--r-- | src/bt/ft_btdestroy.c | 23 | ||||
| -rw-r--r-- | src/bt/ft_btnew.c | 25 |
2 files changed, 48 insertions, 0 deletions
diff --git a/src/bt/ft_btdestroy.c b/src/bt/ft_btdestroy.c new file mode 100644 index 0000000..c802db0 --- /dev/null +++ b/src/bt/ft_btdestroy.c @@ -0,0 +1,23 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_btdestroy.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: cacharle <marvin@42.fr> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2020/02/07 21:30:53 by cacharle #+# #+# */ +/* Updated: 2020/02/07 21:35:19 by cacharle ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft_bt.h" + +void ft_btdestroy(t_ftbtree *tree, void (*del)(void *data)) +{ + if (tree == NULL) + return ; + ft_btdestroy(tree->left, del); + ft_btdestroy(tree->right, del); + (*del)(tree->data); + free(tree); +} diff --git a/src/bt/ft_btnew.c b/src/bt/ft_btnew.c new file mode 100644 index 0000000..973e1a4 --- /dev/null +++ b/src/bt/ft_btnew.c @@ -0,0 +1,25 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_btnew.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: cacharle <marvin@42.fr> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2020/02/07 21:33:16 by cacharle #+# #+# */ +/* Updated: 2020/02/07 21:34:35 by cacharle ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft_bt.h" + +t_ftbtree *ft_btnew(void *data) +{ + t_ftbtree *tree; + + if ((tree = (t_ftbtree*)malloc(sizeof(t_ftbtree))) == NULL) + return (NULL); + tree->data = data; + tree->left = NULL; + tree->right = NULL; + return (tree); +} |
