LeetCode 1080. 根到叶路径上的不足节点(递归)

1. 题目

给定一棵二叉树的根 root,请你考虑它所有根到叶的路径:从根到任何叶的路径。(所谓一个叶子节点,就是一个没有子节点的节点)

假如通过节点 node 的每种可能的 “根-叶” 路径上值的总和全都小于给定的 limit,则该节点被称之为「不足节点」,需要被删除。

请你删除所有不足节点,并返回生成的二叉树的根。

示例 1:

在这里插入图片描述
输入:root = [1,2,3,4,-99,-99,7,8,9,-99,-99,12,13,-99,14], limit = 1
在这里插入图片描述
输出:[1,2,3,4,null,null,7,8,9,null,14]

示例 2:
在这里插入图片描述

输入:root = [5,4,8,11,null,17,4,7,1,null,null,5,3], limit = 22
在这里插入图片描述
输出:[5,4,8,11,null,17,4,7,null,null,null,5]

示例 3:

在这里插入图片描述
输入:root = [5,-6,-6], limit = 0
输出:[]

提示:
给定的树有 15000 个节点
-10^5 <= node.val <= 10^5
-10^9 <= limit <= 10^9

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/insufficient-nodes-in-root-to-leaf-paths
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. 解题

class Solution {int sum = 0;//全局变量
public:TreeNode* sufficientSubset(TreeNode* root, int limit) {if(!root)return NULL;sum += root->val;//加入路径sumif(!root->left && !root->right)//叶子节点{if(sum < limit)//需要删除节点{sum -= root->val;return NULL;//一会父节点left或right指向nullptr}else//不删{sum -= root->val;return root;//原封不动,返回该节点}}else	//非叶子节点,继续往下+{root->left = sufficientSubset(root->left, limit);root->right = sufficientSubset(root->right, limit);//左右都处理完了sum -= root->val;//当前节点要return了,减去它的值if(!root->left && !root->right)//左右至少有一个被删了,且现在没有子节点了return NULL;//它自己也需要被删elsereturn root;}}
};

在这里插入图片描述

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

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

相关文章

Spring Cloud构建微服务架构:分布式配置中心(加密解密)

在微服务架构中&#xff0c;我们通常都会采用DevOps的组织方式来降低因团队间沟通造成的巨大成本&#xff0c;以加速微服务应用的交付能力。这就使得原本由运维团队控制的线上信息将交由微服务所属组织的成员自行维护&#xff0c;其中将会包括大量的敏感信息&#xff0c;比如&a…

112页机器学习数学知识整理!数学基础回顾.pptx

机器学习的基础是数学&#xff0c;数学基础决定了机器学习从业人员的上限&#xff0c;想要学好机器学习&#xff0c;就必须学好数学。这么多数学知识&#xff0c;不管是硕士阶段还是博士阶段的研究生&#xff0c;是没法学完全的&#xff0c;必须有所取舍&#xff0c;黄海广博士…

LeetCode 274. H指数(排序,哈希)

1. 题目 给定一位研究者论文被引用次数的数组&#xff08;被引用次数是非负整数&#xff09;。编写一个方法&#xff0c;计算出研究者的 h 指数。 h 指数的定义: “h 代表“高引用次数”&#xff08;high citations&#xff09;&#xff0c;一名科研人员的 h 指数是指他&…

论文浅尝 | 记忆推理:最近邻知识图谱嵌入

笔记整理&#xff1a;孙硕硕&#xff0c;东南大学硕士&#xff0c;研究方向为根因溯源。Citation: Zhang N, Xie X, Chen X, et al. Reasoning Through Memorization: Nearest Neighbor Knowledge Graph Embeddings[J]. arXiv preprint arXiv:2201.05575, 2022.动机大多数知识图…

LeetCode 275. H指数 II(二分查找)

1. 题目 给定一位研究者论文被引用次数的数组&#xff08;被引用次数是非负整数&#xff09;&#xff0c;数组已经按照升序排列。编写一个方法&#xff0c;计算出研究者的 h 指数。 h 指数的定义: “h 代表“高引用次数”&#xff08;high citations&#xff09;&#xff0c;…

Spring Cloud中Hystrix 线程隔离导致ThreadLocal数据丢失

在Spring Cloud中我们用Hystrix来实现断路器&#xff0c;Zuul中默认是用信号量&#xff08;Hystrix默认是线程&#xff09;来进行隔离的&#xff0c;我们可以通过配置使用线程方式隔离。 在使用线程隔离的时候&#xff0c;有个问题是必须要解决的&#xff0c;那就是在某些业务…

如果再这么玩下去,中国的科研就没戏了

文 | 知识分子编者按&#xff1a;今天编发的这篇文章&#xff0c;是某国立研究所所长的内心自白。他的一家之言&#xff0c;道出了许多人不愿意面对的现实——中国科研表面上看起来一片繁荣&#xff0c;实际深藏危机&#xff0c;如果继续跟班式搞科研&#xff0c;中国科研就没戏…

Spring Cloud Feign的文件上传实现

在Spring Cloud封装的Feign中并不直接支持传文件&#xff0c;但可以通过引入Feign的扩展包来实现&#xff0c;本来就来具体说说如何实现。 服务提供方&#xff08;接收文件&#xff09; 服务提供方的实现比较简单&#xff0c;就按Spring MVC的正常实现方式即可&#xff0c;比…

论文浅尝 | 开放知识图谱构建必读:封闭域VS开放知识抽取与4大类开放抽取常用方法概述...

转载公众号| 老刘说NLP最近社区抛出一个关于开放知识抽取的话题&#xff0c;也是当前知识图谱构建的一个热点&#xff0c;希望能够介绍相关的工作&#xff0c;而在之前也做过一些工作&#xff0c;借着这个机会&#xff0c;写一篇文章&#xff0c;来跟大家谈谈这个问题。开放知识…

别再双塔了!谷歌提出DSI索引,检索效果吊打双塔,零样本超BM25!

卖萌屋今日学术精选这篇论文展示了信息检索可以用一个Transformer来完成&#xff0c;其中&#xff0c;关于语料库的所有信息都被编码在Transformer模型的参数中。论文标题&#xff1a;Transformer Memory as a Differentiable Search Index链接&#xff1a;https://arxiv.org/a…

LeetCode 71. 简化路径(栈)

1. 题目 以 Unix 风格给出一个文件的绝对路径&#xff0c;你需要简化它。或者换句话说&#xff0c;将其转换为规范路径。 在 Unix 风格的文件系统中&#xff0c;一个点&#xff08;.&#xff09;表示当前目录本身&#xff1b;此外&#xff0c;两个点 &#xff08;..&#xff…

我有一段很厉害的代码,不外传的那种

文 | 郭忠明知乎最近在知乎上看到一个问题&#xff0c;叫做“程序员有没有很厉害、不外传的代码”。​好像在这个遍地都是开源项目的时代&#xff0c;啥代码都藏不住。但其实&#xff0c;是有的&#xff0c;而且有不少&#xff01;很多算法在没有公开前&#xff0c;普通程序员都…

开源开放 | OpenKG发布cnSchema重构版本

cnSchema网站&#xff1a;http://cnschema.openkg.cn/GitHub地址&#xff1a;https://github.com/cnschema/cnSchema开放许可协议&#xff1a;CC 0摘要cnSchema是由OpenKG管理和维护的面向中文知识图谱的Schema参考标准。结合中文语言特点和中文领域特点需求&#xff0c;cnSche…

Spring Cloud构建微服务架构:分布式服务跟踪(抽样收集)【Dalston版】

通过Trace ID和Span ID已经实现了对分布式系统中的请求跟踪&#xff0c;而这些记录的跟踪信息最终会被分析系统收集起来&#xff0c;并用来实现对分布式系统的监控和分析功能&#xff0c;比如&#xff1a;预警延迟过长的请求链路、查询请求链路的调用明细等。此时&#xff0c;我…

LeetCode 229. 求众数 II(摩尔投票)

1. 题目 给定一个大小为 n 的数组&#xff0c;找出其中所有出现超过 ⌊ n/3 ⌋ 次的元素。 说明: 要求算法的时间复杂度为 O(n)&#xff0c;空间复杂度为 O(1)。 示例 1: 输入: [3,2,3] 输出: [3] 示例 2: 输入: [1,1,1,3,3,2,2,2] 输出: [1,2]来源&#xff1a;力扣&#xf…

95后CV工程师晒出工资单:狠补了这个,真香…

许多计算机视觉任务需要对图像进行智能分割&#xff0c;以理解图像中的内容&#xff0c;并使每个部分的分析更加容易。今天的图像分割技术使用计算机视觉深度学习模型来理解图像的每个像素所代表的真实物体&#xff0c;这在十年前是无法想象的。图像分割有助于确定目标之间的关…

论文浅尝 | CAKE:一个用于多视图知识图谱补全的可扩展性常识感知框架

笔记整理&#xff1a;陈子强&#xff0c;天津大学硕士链接&#xff1a;https://aclanthology.org/2022.acl-long.36.pdf动机以往的知识图谱补全仅仅依靠事实级别数据来预测实体之间缺失的关系&#xff0c;这样忽略了有价值的常识性知识。以往的知识图谱嵌入面临无效的负采样和事…

Spring Cloud构建微服务架构:分布式服务跟踪(收集原理)【Dalston版】

在本节内容之前&#xff0c;我们已经对如何引入Sleuth跟踪信息和搭建Zipkin服务端分析跟踪延迟的过程做了详细的介绍&#xff0c;相信大家对于Sleuth和Zipkin已经有了一定的感性认识。接下来&#xff0c;我们介绍一下关于Zipkin收集跟踪信息的过程细节&#xff0c;以帮助我们更…

LeetCode 263. 丑数 264. 丑数 II(DP)

文章目录1. LeetCode 263. 丑数解题2. LeetCode 264. 丑数 IIDP解题1. LeetCode 263. 丑数 编写一个程序判断给定的数是否为丑数。 丑数就是只包含质因数 2, 3, 5 的正整数。 示例 1: 输入: 6 输出: true 解释: 6 2 3示例 2: 输入: 8 输出: true 解释: 8 2 2 2示例 3: …

对比学习效果差?谷歌提出弱语义负样本,有效学习高级特征!

文 | jxyxiangyu编 | 小轶对比学习是 2021 年几大研究热点之一了。如果说预训练模型解决了机器学习对大规模标注数据的需求问题&#xff0c;那么&#xff0c;对比学习可以说是将无监督/自监督学习推广到更一般的应用场景&#xff0c;为苦于标注数据不多的炼丹师们又带来了福音。…