【树-简单】404. 左叶子之和

【力扣题解】P404-左叶子之和-Java题解 阅读详情

【题目】
计算给定二叉树的所有左叶子之和。

示例:

3

/
9 20
/
15 7

在这个二叉树中,有两个左叶子,分别是 9 和 15,所以返回 24
【代码】
【递归】
在这里插入图片描述

class Solution:
    def sumOfLeftLeaves(self, root: TreeNode) -> int:
        self.sum=0
        self.visit(root,0)
        return self.sum
    
    def visit(self,root,flag):
        if not root:
            return 
        if not root.left and not root.right:
            self.sum+=flag*root.val
        self.visit(root.left,1)
        self.visit(root.right,0)

【BFS】
在这里插入图片描述

# Definition for a binary tree node.
# class TreeNode:
#     def __init__(self, val=0, left=None, right=None):
#         self.val = val
#         self.left = left
#         self.right = right
class Solution:
    def sumOfLeftLeaves(self, root: TreeNode) -> int:
        flag=[0]
        queue=[root]
        ans=0
        while queue:
            size=len(queue)
            for i in range(size):
                node =queue.pop(0)
                if not node.left and not node.right:
                    ans+=node.val*flag[0]
                flag.pop(0)
                if node.left:
                    flag.append(1)
                    queue.append(node.left)
                if node.right:
                    flag.append(0)
                    queue.append(node.right)
        return ans

别再死磕MuJoCo了!用PyBullet+Stable-Baselines3搞定机械臂强化学习(保姆级环境配置) 本文详细介绍了如何使用PyBullet和Stable-Baselines3构建机械臂强化学习系统,绕过昂贵的MuJoCo许可壁垒。通过实战指南,包括环境配置、机械臂Gym环境构建、训练策略与调优技巧,帮助开发者快速掌握机器人强化学习技术,提升智能控制效率。 阅读详情

相关推荐

Linux CentOS7文件系统(/dev/var)的容量扩充

原因是之前安装docker后,再想安装Nessus,系统说home、var文件系统的内存都不够。

JHoanna的博客 3226

404. 左叶子之和(简单)—树的遍历、BFS、DFS

404. 左叶子之和 关键词:树、树的遍历、广度优先搜索BFS、深度优先搜索DFS 题目要求: 计算给定二叉树的所有左叶子之和。 示例: 3 / \ 9 20 / \ 15 7 在这个二叉树中,有两个左叶子,分别是 9 和 15,所以返回 24 题解: 考虑到《数据结构》中学到的树的中序、先序、后序遍历,此题和树的中序遍历有些相似,故而加以改写: /** * Definition for a binary tree node. * public class T

qq_38454093的博客 196

USB设备识别码VID和PID详解:如何查询和自定义你的设备ID

本文详细解析了USB设备识别码VID和PID的核心作用、查询方法及自定义配置技巧。VID(供应商识别码)和PID(产品识别码)是USB设备的唯一身份证,用于驱动匹配和功能识别。文章提供了Windows和Linux系统下的查询方法,并探讨了如何合法获取和自定义VID/PID,适合硬件开发者和DIY爱好者参考。

weixin_29168675的博客 1491

解密时刻:一个简单的树算法如何拯救了我混乱的配置系统(404. 左叶子之和)

将一个抽象的算法问题融入到真实的开发故事里,这正是我最喜欢做的事情。这能让冰冷的算法变得有温度,也能让大家看到理论知识是如何在实际工作中发光发热的。来,听我给你讲讲,我曾经是如何用一个简单的树算法,解决了一个棘手的资源统计难题的。

热爱WebGIS的博客 978

别再瞎调参数了!分子动力学模拟新手必看的力场选择与验证实战指南

本文为分子动力学模拟新手提供力场选择与验证的实战指南,详细解析主流力场特性及适用场景,并通过水分子案例演示完整的验证流程。文章重点对比SPC/E、TIP3P和OPLS-AA三种力场在GROMACS中的表现,帮助读者避免常见参数调整误区,提升模拟准确性。

weixin_26934905的博客 426

37、OpenMP:并行编程的强大工具

本文详细介绍了 OpenMP 的核心功能和使用方法,包括执行环境例程、线程同步与协调机制,如关键区域、屏障、原子操作、归约子句、刷新构造和锁机制。此外,还提供了多个实践练习,涵盖矩阵乘法的并行实现、任务池与流水线模式的应用、读写锁的扩展与移植,以及客户端-服务器模式的实现与优化。通过这些内容,读者可以全面掌握 OpenMP 在并行编程中的实际应用与性能优化技巧。

www00的博客 106

【LeetCode】C++ :简单题 - 树 404. 左叶子之和

404. 左叶子之和 难度简单271 计算给定二叉树的所有左叶子之和。 示例: 3 / \ 9 20 / \ 15 7 在这个二叉树中,有两个左叶子,分别是 9 和 15,所以返回 24 一上来就层序遍历,我错了。 主要就是判断什么时候是左叶子,这点吸取了之前的教训,现在知道从父节点判断入手啦,这里和链表的寻值问题类似,从之前一步判断是正确的。 然后就是递归了。 递归递归,今天树就到这吧,我要去找递归求教去了。 /** * Defi..

weixin_44566432的博客 184

matlab 计算点云粗糙度

A Correspondence Framework for ALS Strip Adjustments based on Variants of the ICP Algorithm

点云侠的博客 1830

404. 左叶子之和(简单 树 深度优先搜索 二叉树 递归)

404. 左叶子之和 计算给定二叉树的所有左叶子之和。 示例: 3 / 9 20 / 15 7 在这个二叉树中,有两个左叶子,分别是 9 和 15,所以返回 24 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/sum-of-left-leaves 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。 分析 分析参考https://github.com/youngyangyang04/leetcode-master/blo

weixin_43942435的博客 1132

4、分布式发电系统中用于改善电能质量的有源、无源和混合滤波器

本文探讨了分布式发电系统中,尤其是光伏(PV)系统运行过程中引入的电能质量问题,并分析了有源滤波器、无源滤波器及混合滤波器在改善电能质量方面的应用。文章详细介绍了光伏系统的建模、最大功率点跟踪(MPPT)技术,以及谐波、电压波动等技术问题,同时对各类滤波器的拓扑结构和控制方法进行了系统性总结。通过仿真实例比较了不同滤波器在减少谐波方面的效果,为实际工程应用提供了参考依据。

transformer2023的博客 92

HyperLynx(十四)高级分析技术

如果没有查找到该模型,可使用菜单命令“Setup”→“Options”→“Directories”,打开“Set Directories”对话框,单击“Edit”按钮,在“Select Directories for IC-Model Files”对话框中将路径“…在“Assign Models”对话框中的“Port”栏找到“OUTM”端口,在其对应的“Circuit Connection”栏中选择“txout”项。将端口R75连接到“Gnd”。同样,将“EMP”连接到“V”,完成预加重设置。...

小幽余生不加糖 4951

Day15 | 404. 左叶子之和、513. 找树左下角的值、112. 路径总和、106. 从中序与后序遍历序列构造二叉树、105. 从前序与中序遍历序列构造二叉树、654. 最大二叉树

106. 从中序与后序遍历序列构造二叉树。105. 从前序与中序遍历序列构造二叉树。513. 找树左下角的值。404. 左叶子之和。654. 最大二叉树。

m0_56545264的博客 226

树根互联Java开发面试题及参考答案

说一下 Java 集合类。 Java 集合类是用于存储和操作一组对象的容器。它提供了多种数据结构,方便程序员对数据进行高效的管理和处理。 Java 集合框架主要包括两大接口:Collection 和 Map。 Collection 接口是一组对象的集合,它有三个主要的子接口:List、Set 和 Queue。 List 接口代表有序的集合,可以包含重复的元素。例如 ArrayList,它是基于数组实现的动态数组。它的优点是随机访问效率高,通过索引访问元素的时间复杂度为 O (1)。当

大模型大数据攻城狮的专栏 856

404. 左叶子之和

这道题目要求左叶子之和,其实是比较绕的,因为不能判断本节点是不是左叶子节点。此时就要通过节点的父节点来判断其左孩子是不是左叶子了。平时我们解二叉树的题目时,已经习惯了通过节点的左右孩子判断本节点的属性,而本题我们要通过节点的父节点判断本节点的属性。希望通过这道题目,可以扩展大家对二叉树的解题思路。

YouMing_Li的博客 1359

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

左叶子之和

左叶子之和(力扣:404) 计算给定二叉树的所有左叶子之和。

卜大爷的博客 2万+

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

Java实现 LeetCode 404 左叶子之和

404. 左叶子之和 计算给定二叉树的所有左叶子之和。 示例: 3 / \ 9 20 / \ 15 7 在这个二叉树中,有两个左叶子,分别是 9 和 15,所以返回 24 /** * Definition for a binary tree node. * public class TreeNode { * int val; * T...

南 墙 1万+

LC 404.左叶子之和

给定二叉树的根节点root,返回所有左叶子之和。24在这个二叉树中,有两个左叶子,分别是 9 和 15,所以返回 24root = [1]0[1, 1000]−1000≤Nodeval≤1000。

花木凋零成兰的博客 1255

LeetCode 404 左叶子之和

LeetCode 404 左叶子之和 题目链接 计算给定二叉树的所有左叶子之和。 示例: 3 / \ 9 20 / \ 15 7 在这个二叉树中,有两个左叶子,分别是 9 和 15,所以返回 24 对二叉树进行 BFS,如果某个结点的左子结点是叶子结点就加到答案里,AC代码如下: class Solution { public: int sumOfLeftLeaves(TreeNode* root) { int ans=0; q

旺崽的博客 2788

代码随想录二刷 | 二叉树 |404.左叶子之和

404.左叶子之和

方可申不翘二郎腿的博客 982

力扣热题——左叶子之和

力扣热题,让我带你进入二叉树的世界,超详细解释,新手也能学会!!!

WenJGo的博客 1254

C++力扣题目404--左叶子之和

这道题目要求左叶子之和,其实是比较绕的,因为不能判断本节点是不是左叶子节点。此时就要通过节点的父节点来判断其左孩子是不是左叶子了。平时我们解二叉树的题目时,已经习惯了通过节点的左右孩子判断本节点的属性,而本题我们要通过节点的父节点判断本节点的属性。希望通过这道题目,可以扩展大家对二叉树的解题思路。

weixin_47675625的博客 981

算法题 左叶子之和

摘要:本文介绍了LeetCode 404题"左叶子之和"的解法。问题要求计算二叉树中所有左叶子的值之和。提供了四种解法:带标志的递归(O(n)时间)、父节点法(最优)、BFS和DFS迭代法。核心思路是识别左叶子节点(既是叶子又是左子节点),通过递归或迭代遍历树结构。代码示例展示了Java实现,并分析了各方法的时间/空间复杂度。以示例树[3,9,20,null,null,15,7]为例,正确结果为24(9+15)。

红血哥 714

LeetCode404.左叶子之和

/** Definition for a binary tree node. struct TreeNode { int val; TreeNode *left; TreeNode *right; TreeNode(int x) : val(x), left(NULL), right(NULL) {} }; /class Solution { public: int su...

坚果 265

404.左叶子之和

404.左叶子之和 每日几道leetcode刷刷题! 传送门 题目描述 给定二叉树的根节点 root ,返回所有左叶子之和。 示例 1: 输入: root = [3,9,20,null,null,15,7] 输出: 24 解释: 在这个二叉树中,有两个左叶子,分别是 9 和 15,所以返回 24 代码 class Solution(object): def sumOfLeftLeaves(self, root): """ :type root: TreeN

weixin_44571635的博客 1164
上一篇: 【树-简单】637. 二叉树的层平均值
下一篇: 【树-简单】100. 相同的树
菜菜2022
博客等级 码龄9年 67粉丝 1033原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值