首页 > 试题广场 >

左叶子之和

[编程题]左叶子之和
  • 热度指数:2987 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
计算给定二叉树的左叶子之和。

树上叶子节点指没有后继节点的节点,左叶子指连向父节点的左侧的叶子节点。

样例 2 解释:

叶子节点有 4 , 5 ,3,左叶子只有 4 ,所以答案返回 4

样例 3 解释

叶子节点有 4 , 5 ,6,左叶子有 4 , 6,所以答案返回 10

数据范围:树上节点的数量满足 ,节点上的值满足
示例1

输入

{1,2}

输出

2
示例2

输入

{1,2,3,4,5}

输出

4
示例3

输入

{1,2,3,4,5,6}

输出

10

说明:本题目包含复杂数据结构TreeNode,点此查看相关信息
int sumOfLeftL
int sumOfLeftLeaves(struct TreeNode* root ) 
{
    int leftsum = 0;
    if(root == NULL)
    {
        return 0;
    }

    if(root->left && root->left->left ==NULL&& root->left->right ==NULL)
    {
        leftsum = root->left->val;
    }
    leftsum += sumOfLeftLeaves(root->left);
    int rightsum = sumOfLeftLeaves(root->right);

    return leftsum +rightsum ;
    // write code here
}

发表于 2022-09-24 19:02:09 回复(0)

问题信息

难度:
1条回答 2614浏览

热门推荐

通过挑战的用户

查看代码