力扣404 左叶子之和

题目:

给定二叉树的根节点 root ,返回所有左叶子之和。

示例:

输入: root = [3,9,20,null,null,15,7] 
输出: 24 
解释: 在这个二叉树中,有两个左叶子,分别是 915,所以返回 24

思路:

一定要注意本题要求的是左叶子之和,是叶子节点的值和。

放上本人写错的左孩子节点之和代码:

复制代码
class Solution {
    int sum=0;
    public int sumOfLeftLeaves(TreeNode root) {//1.确定返回值和参数
        //2.确定终止条件
        if(root.left==null&&root.right==null){
            return 0;
        }
        //3.单层逻辑:sum+=每层左子树之和:后序遍历
        if(root.left!=null){
            sum+=root.left.val;
            sumOfLeftLeaves(root.left);
        }
        if(root.right!=null){
            sumOfLeftLeaves(root.right);
        }
        return sum;
    }
}
复制代码

 暴力一点,找是左叶子的节点,直接加:

复制代码
class Solution {
    public int sumOfLeftLeaves(TreeNode root) {
        int sum=0;
        if(root==null){
            return 0;
        }
        if(root.left!=null){//左孩子
            if(root.left.left==null&&root.left.right==null){//并且是叶子节点
                sum+=root.left.val;
            }
        }
        sum+=sumOfLeftLeaves(root.left)+sumOfLeftLeaves(root.right);
        return sum;
    }
}
复制代码

 

posted @   壹索007  阅读(3)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
点击右上角即可分享
微信分享提示