Python | Leetcode Python题解之第404题左叶子之和

news2024/11/16 17:55:42

题目:

题解:

class Solution:
    def sumOfLeftLeaves(self, root: TreeNode) -> int:
        if not root:
            return 0
        
        isLeafNode = lambda node: not node.left and not node.right
        q = collections.deque([root])
        ans = 0

        while q:
            node = q.popleft()
            if node.left:
                if isLeafNode(node.left):
                    ans += node.left.val
                else:
                    q.append(node.left)
            if node.right:
                if not isLeafNode(node.right):
                    q.append(node.right)
        
        return ans

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2133748.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Tomcat_使用IDEA开发javaWeb工程并部署运用

目录 1.配置文件 点击file projectStructure 配置SDK和language level的语言版本一致。apply然后ok。 2. 然后点击web-all创建一个moudle叫做demo02-web02。 3.这仅仅是一个java的目录结构,我们需要把他转换成javaweb的结构。所以我们需要添加web资源组件。右…

【STM32】独立看门狗(IWDG)原理详解及编程实践(下)

这篇文章详细讲解独立看门狗的编程实践代码。关于独立看门狗的原理及配置可以看上一篇文章。 【STM32】独立看门狗(IWDG)原理详解及编程实践(上)-CSDN博客 目录 1、 初始化 IWDG 2. 配置 IWDG 3. 喂狗 4. 处理看门狗复位 5、完…

Google推出Data Commons解决AI“幻觉”

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…

SQL进阶技巧:如何将字符串数组清洗为简单map结构? | translate + regexp_replace方法

目录 0 场景描述 1 数据准备 2 问题分析 2.1 方法1 特征法-通用解法 2.2 方法2枚举法(不通用) 3 小结 ~~END~~ 如果觉得本文对你有帮助,那么不妨也可以选择去看看我的博客专栏 ,部分内容如下: 数字化建设通关指南专栏原价99,现在活动价29.9,按照阶梯式增长,直到恢…

C++面试3

一、常用设计模式 https://blog.csdn.net/m0_71530237/article/details/141140118?spm1001.2014.3001.5501 二、死锁以及解决方式? 死锁:一种常见的并发问题,发生在多个进程或线程因为竞争资源而陷入相互等待的状态,导致这些进…

199.二叉树的右视图(两种方法实现)

一、题目 思路1 对于一个任意给定的二叉树,我们不能确定二叉树的形状; 设计一个每次遍历二叉树的右子树的深度优先遍历,这样深度优先遍历中每层遍历到的第一个结点就是最右边的结点; 代码实现大致分为四部分: 哈希…

error:Framework ‘Pods_xxx‘ not found解决方法

报错“Framework Pod_xxx.framework找不到”通常意味着你的项目正在尝试链接或使用一个名为Pod_xxx.framework的框架,但是这个框架并没有被正确地添加到项目中。 解决办法: 1.点击项目蓝色图标,在左侧Target部分,点击你当前的项…

Maven从入门到精通(三)

一、Settings 配置 settings.xml 用来配置 maven 项目中的各种参数文件,包括本地仓库、远程仓库、私服、认证等信息。 全局 settings、用户 setting、pom 的区别: 全局 settings.xml 是 maven 的全局配置文件,一般位于 ${maven.home}/conf…

如何进行大模型训练和微调?(实战)

1、在项目中,如果prompt和function calling足够好,尽量不要微调,节约成本。 以下是针对function calling的slot,评估准确率(识别准确度)、召回率(全面率),F1值。 从中可以…

error: subprocess-exited-with-error

error: subprocess-exited-with-error 欢迎来到英杰社区https://bbs.csdn.net/topics/617804998 欢迎来到我的主页,我是博主英杰,211科班出身,就职于医疗科技公司,热衷分享知识,武汉城市开发者社区主理人 擅长.net、C、…

论文速递! Attention-LSTM特征融合,用于剩余使用寿命(RUL)预测

论文标题:Machine Remaining Useful Life Prediction via an Attention-Based Deep Learning Approach 期刊信息:IEEE TIE (中科院1区, JCR Q1 TOP, IF7.5) 引用:Chen Z, Wu M, Zhao R, et al. Machine remaining useful life prediction v…

借助Aspose.Email、用C# 渲染 HTML 格式 电子邮件

对于构建电子邮件通信应用程序的开发人员来说,电子邮件渲染对于确保通过应用程序发送的电子邮件在不同的电子邮件客户端、设备和设置中正确且一致地显示至关重要。 为了有效地执行此任务,Aspose.Email for .NET提供了多种功能,用于格式化和自…

C++ Primer Plus(速记版)-容器和算法

第九章 顺序容器 容器是存储特定类型对象的集合,标准库提供了多种容器类型以支持不同的使用场景。其中,顺序容器(如vector、list、deque)根据元素添加到容器中的顺序来存储和访问元素,与元素值无关。 这些顺序容器各有…

昆仑通态触摸屏——历史曲线XY轴调节功能

目录 1、添加参数 2、规划界面 3、编写脚本 4、结果演示 前言 在工程中有时会遇到因环境等变化而导致参数波动较大,对于这种参数我们想要在触摸屏中直观地看到变化的趋势,就需要比较大的显示屏或者可调节的曲线显示。但是在历史曲线的设置中没有直接…

MySQL底层为什么选择用B+树作为索引

首先,我们来想想为什么这么多数据结构,为什么要用树这种数据结构? 众多的数据结构在逻辑层面可分为:线性结构 和 非线性结构。 线性结构有:数组、链表,基于它们衍生出的有哈希表(哈希表也称散…

01_Python基本语法

Hello Python 与其他编程一样,第一个程序都是输出Hello World!。 print("Hello World!")print() 函数由两部分构成 : 指令:print指令的执行对象,在 print 后面的括号里的内容 Hello World!。 Python程序的执行流程如…

JS - 获取剪切板内容 Clipboard API

目录 1,需求最终效果 2,实现示例 3,注意点1,只支持安全上下文环境2,只能读取当前页面的剪切板3,权限获取问题4,获取内容的 MIME_TYPE 问题1,文本内容2,图片内容 5&#x…

深入MySQL的索引实践及优化

文章目录 一、什么是索引二、数据结构——为什么是B树平衡二叉查找树红黑树B树(多叉)B树(多叉) 三、MySQL索引实战1.索引创建(1)自动创建索引(2)手动创建非聚簇索引(3)索引的代价 2.B树索引原则(1)等值匹配…

make 程序规定的 makefile 文件的书写语法(4)

(29)接着学习 make 支持的变量追加操作, , 在变量的原有字符串的基础上,再追加字符串,并用一个空格隔开: (30)再学习 make 的语法,shell 运行赋值&#xff1…

关于Redis缓存一致性问题的优化和实践

目录标题 导语正文分布式场景下无法做到强一致即使是达到最终一致性也很难缓存的一致性问题缓存是如何写入的 如何感知数据库的变化最佳实践一:数据库变更后失效缓存最佳实践二:带版本写入 总结与展望阿里XKV腾讯DCache 导语 Redis缓存一致性的问题是经…