当前位置: 首页 > article >正文

LeetCode:404.左叶子之和

跟着carl学算法,本系列博客仅做个人记录,建议大家都去看carl本人的博客,写的真的很好的!
代码随想录

LeetCode:404.左叶子之和
给定二叉树的根节点 root ,返回所有左叶子之和。
示例 1:
在这里插入图片描述
输入: root = [3,9,20,null,null,15,7]
输出: 24
解释: 在这个二叉树中,有两个左叶子,分别是 9 和 15,所以返回 24
示例 2:
输入: root = [1]
输出: 0

递归法,后序遍历,左右中,注意这里左叶子节点的判断,是需要再父节点的地方来判断的

	public int sumOfLeftLeaves(TreeNode root) {
        if (root == null)
            return 0;
        if (root.left == null && root.right == null)
            return 0;
        // 左
        int leftSum;
        if (root.left != null && root.left.left == null && root.left.right == null) {
        	// 是左叶子节点
            leftSum = root.left.val;
        } else {
        	// 不是左叶子节点
            leftSum = sumOfLeftLeaves(root.left);
        }
        // 右
        int rightSum = sumOfLeftLeaves(root.right);
        // 中
        int res = leftSum + rightSum;
        return res;
    }

http://www.kler.cn/a/458128.html

相关文章:

  • 第十一章 图论
  • Android14 CTS-R6和GTS-12-R2不能同时测试的解决方法
  • 【网络安全实验室】脚本关实战详情
  • 多个线程处理不同的数据,等线程都完成后再进行下一步操作
  • 一文学习SpringBoot
  • sdut-C语言实验-合数分解
  • 【多维DP】【hard】力扣1223. 掷骰子模拟
  • 【Java】面试题 并发安全 (1)
  • C语言-详细讲解-字符串加密
  • 视频里面的音乐怎么提取出来?工具分享和教程示例
  • 前端工作中问题点拆分
  • 4-Linux 文件系统组成
  • 爬虫过程中遇到异常怎么办?
  • C++ 学习第22天:智能指针与异常处理
  • 硬件工程师面试题 21-30
  • 2024西北工业大学noj(C语言)记录全100题
  • 【pytorch】conda安装pytorch
  • 路由器静态路由配置
  • Flink源码解析之:如何根据算法生成StreamGraph过程
  • 【每日学点鸿蒙知识】长按动画、Canvas与底部导航重叠、Grid拖动、Web宽度自适应
  • # 【超全面了解鸿蒙生命周期】-生命周期补充
  • 快速打造智能应用:从设计到上线的全流程指南
  • LeetCode 82:删除排序链表中的重复元素 II
  • 【MySql】2020-03-12 Windows安装MySQL5.7.28
  • Microi吾码|.NET、VUE快速搭建项目,低代码便捷开发教程
  • QML学习(五) 做出第一个简单的应用程序