当前位置:网站首页>【LeetCode】1161. 最大层内元素和
【LeetCode】1161. 最大层内元素和
2022-08-02 19:21:00 【pass night】
题目
给你一个二叉树的根节点 root
。设根节点位于二叉树的第 1
层,而根节点的子节点位于第 2
层,依此类推。
请返回层内元素之和 最大 的那几层(可能只有一层)的层号,并返回其中 最小 的那个。
示例 1:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yK3DGt66-1659234515466)(figures/1161. 最大层内元素和/capture.jpeg)]
输入:root = [1,7,0,7,-8,null,null]
输出:2
解释:
第 1 层各元素之和为 1,
第 2 层各元素之和为 7 + 0 = 7,
第 3 层各元素之和为 7 + -8 = -1,
所以我们返回第 2 层的层号,它的层内元素之和最大。
示例 2:
输入:root = [989,null,10250,98693,-89388,null,null,null,-32127]
输出:2
提示:
- 树中的节点数在
[1, 104]
范围内 -105 <= Node.val <= 105
思路
- 遍历每一层 ,求和,判断是否为最大值,若为最大值则记录最大值和层号
代码
# 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 maxLevelSum(self, root: Optional[TreeNode]) -> int:
maxSum,layer,currentLayer = -1<<31,0,0
queue = collections.deque([root])
while queue:
currentSum = 0
currentLayer += 1
for _ in range(len(queue)):
cur = queue.popleft()
currentSum += cur.val
if cur.left: queue.append(cur.left)
if cur.right: queue.append(cur.right)
if currentSum>maxSum:
maxSum,layer = currentSum,currentLayer
return layer
复杂度
- 时间复杂度: O ( n ) O(n) O(n)
- 空间复杂度: O ( n ) O(n) O(n)
边栏推荐
猜你喜欢
溜不溜是个问题
ShapeableImageView 的使用,告别shape、三方库
ShardingSphere-proxy +PostgreSQL实现读写分离(静态策略)
什么是现场服务管理系统(FSM)?有什么好处?
Go----Go 语言快速体验之开发环境搭建及第一个项目HelloWord
连续三次 | 灵雀云入选Gartner中国ICT技术成熟度曲线报告
2022-07-27
Gradle系列——Gradle的build.gradle文件详情,项目发布(基于Gradle文档7.5)day3-3
【C语言刷题】Leetcode238——除自身以外数组的乘积
JVM内存和垃圾回收-03.运行时数据区概述及线程
随机推荐
spack install报错/tmp/ccBDQNaB.s: Assembler message:
Geoserver+mysql+openlayers2
银保监会:人身险产品信披材料应由保险公司总公司统一负责管理
Metaverse 001 | Can't control your emotions?The Metaverse is here to help you
【学习日记】win64配置openni的vs2022编译环境
Mysql安装流程 【压缩版】
What is a Field Service Management System (FSM)?what is the benefit?
Redis 5 种数据结构及对应使用场景
基于OpenGL的冰川与火鸟(光照计算模型、视景体、粒子系统)
VMware虚拟机无法上网
JVM内存和垃圾回收-06.本地方法栈
松鼠短视频系统为用户加入随机头像代码-快速为用户加上随机头衔
实现客户服务自助,打造产品知识库
流量分析第一题
治疗 | 如何识别和处理消极想法
EMQX Newsletter 2022-07|EMQX 5.0 正式发布、EMQX Cloud 新增 2 个数据库集成
B站HR对面试者声称其核心用户都是生活中的Loser
SQL-UDT是什么功能?
入职对接-hm项目
一款好用的FAQ搭建工具