孩子求和父在一棵树

时间:2018-11-16 05:12:43

标签: c recursion tree binary-tree

问题在于确定子数据的总和是否等于父数据。如果是这样,则返回true,否则返回false。

下面是我的代码,提交时出现错误。我知道这是一个简单的问题,但是在编写条件之后,我很难遍历所有左右节点来递归地检查二叉树中每个节点的求和条件。

int isSumProperty(Node *node)
{
    if(node == NULL) return 0;
    if((node->left->data + node->right->data) == node->data)
    {
        return 1;
        
    }
    else
    {
        return isSumProperty(node->left)&&isSumProperty(node->right);
    }
    
}

请指导我做错了什么地方。

1 个答案:

答案 0 :(得分:0)

您在访问e时未确保node->left->data不是node->left

这会导致细分错误。