aboutsummaryrefslogtreecommitdiff
path: root/c13/ex04/btree_insert_data.c
diff options
context:
space:
mode:
authorCharles <sircharlesaze@gmail.com>2019-07-24 08:02:55 +0200
committerCharles <sircharlesaze@gmail.com>2019-07-24 08:02:55 +0200
commit5bab06313e71e9827baa426a02bbaf2a00b4e6a0 (patch)
tree5604e51c0008088f25b2f5dfb9143a852dd079dd /c13/ex04/btree_insert_data.c
parent23ad79e8b41c25bb4992d103d29a17612a52e351 (diff)
downloadpiscine-5bab06313e71e9827baa426a02bbaf2a00b4e6a0.tar.gz
piscine-5bab06313e71e9827baa426a02bbaf2a00b4e6a0.tar.bz2
piscine-5bab06313e71e9827baa426a02bbaf2a00b4e6a0.zip
c12 passed, c13 start
Diffstat (limited to 'c13/ex04/btree_insert_data.c')
-rw-r--r--c13/ex04/btree_insert_data.c25
1 files changed, 25 insertions, 0 deletions
diff --git a/c13/ex04/btree_insert_data.c b/c13/ex04/btree_insert_data.c
index e69de29..0999cab 100644
--- a/c13/ex04/btree_insert_data.c
+++ b/c13/ex04/btree_insert_data.c
@@ -0,0 +1,25 @@
+/* ************************************************************************** */
+/* */
+/* ::: :::::::: */
+/* btree_insert_data.c :+: :+: :+: */
+/* +:+ +:+ +:+ */
+/* By: cacharle <charles.cabergs@gmail.com> +#+ +:+ +#+ */
+/* +#+#+#+#+#+ +#+ */
+/* Created: 2019/07/21 18:43:18 by cacharle #+# #+# */
+/* Updated: 2019/07/23 20:49:48 by cacharle ### ########.fr */
+/* */
+/* ************************************************************************** */
+
+#include <stdlib.h>
+#include "ft_btree.h"
+
+// this is half shit
+void btree_insert_data(t_btree **root, void *item, int (*cmpf)(void *, void *))
+{
+ if (*root == NULL)
+ *root = btree_create_elem(item);
+ if ((*cmpf)((*root)->item, item) < 0)
+ btree_insert_root(&(*root)->left, item, cmpf);
+ else if ((*cmpf)((*root)->item, item) > 0)
+ btree_insert_root(&(*root)->right, item, cmpf);
+}