예제 #1
0
//二元树的高度。
int btree_height(btree_node<int> *p_node)
{
	if (p_node == NULL)
		return -1;

	int left_child_height = p_node->mp_left? btree_height(p_node->mp_left): -1;
	int right_child_height = p_node->mp_right? btree_height(p_node->mp_right): -1;
	return std::max<int>(left_child_height, right_child_height) + 1;
}
예제 #2
0
int	btree_height(t_btree *root)
{
	if (!root)
		return (0);
	return (1 + ft_max(btree_height(root->left), btree_height(root->right)));
}