From 79e6c8152252bac1cd632e224ac496a1823da1a5 Mon Sep 17 00:00:00 2001 From: Cabergs Charles Date: Wed, 24 Jul 2019 18:46:39 +0200 Subject: bsq and c13 passed --- c13/ex06/btree_level_count.c | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'c13/ex06/btree_level_count.c') diff --git a/c13/ex06/btree_level_count.c b/c13/ex06/btree_level_count.c index e69de29..5f83662 100644 --- a/c13/ex06/btree_level_count.c +++ b/c13/ex06/btree_level_count.c @@ -0,0 +1,33 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* btree_level_count.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: cacharle +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2019/07/24 11:51:34 by cacharle #+# #+# */ +/* Updated: 2019/07/24 12:28:45 by cacharle ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include +#include "ft_btree.h" + +int btree_level_count(t_btree *root) +{ + int left_level; + int right_level; + + if (root == NULL) + return (0); + left_level = 0; + right_level = 0; + if (root->left != NULL) + left_level = btree_level_count(root->left); + if (root->right != NULL) + right_level = btree_level_count(root->right); + if (left_level >= right_level) + return (1 + left_level); + else + return (1 + right_level); +} -- cgit