当前位置:网站首页>力扣 1161. 最大层内元素和
力扣 1161. 最大层内元素和
2022-08-02 01:02:00 【冷酷的摸鱼小将】
题目
给你一个二叉树的根节点 root。设根节点位于二叉树的第 1 层,而根节点的子节点位于第 2 层,依此类推。
请返回层内元素之和 最大 的那几层(可能只有一层)的层号,并返回其中 最小 的那个。
示例

输入:root = [1,7,0,7,-8,null,null]
输出:2
解释:
第 1 层各元素之和为 1,
第 2 层各元素之和为 7 + 0 = 7,
第 3 层各元素之和为 7 + -8 = -1,
所以我们返回第 2 层的层号,它的层内元素之和最大。
输入:root = [989,null,10250,98693,-89388,null,null,null,-32127]
输出:2
来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/maximum-level-sum-of-a-binary-tree
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
方法1:BFS
Java实现
class Solution {
public int maxLevelSum(TreeNode root) {
Queue<TreeNode> q = new LinkedList<>();
q.offer(root);
int res = -1, step = 1;
int sum, max = Integer.MIN_VALUE;
while (!q.isEmpty()) {
sum = 0;
int sz = q.size();
for (int i = 0; i < sz; i++) {
TreeNode cur = q.poll();
sum += cur.val;
if (cur.left != null) q.offer(cur.left);
if (cur.right != null) q.offer(cur.right);
}
if (sum > max) {
max = sum;
res = step;
}
step++;
}
return res;
}
}

边栏推荐
猜你喜欢
随机推荐
Go 1.18 的那些事——工作区、模糊测试、泛型
go mode tidy出现报错go warning “all“ matched no packages
JS中对作用域链的理解(查找变量)
滴滴秋招提前批正式开始,现在投递免笔试
GO GOPROXY代理设置
mapbox使用教程
Flex布局详解
3 Month Tester Readme: 4 Important Skills That Impacted My Career
Detailed explanation of fastjson
kubernetes之服务发现
大话西游创建角色失败解决
H5页面调用微信授权获取code
交返是做日内交易的必要条件
Flex layout in detail
3个月测试员自述:4个影响我职业生涯的重要技能
Reflex WMS中阶系列7:已经完成拣货尚未Load的HD如果要取消拣货,该如何处理?
关于MySQL的数据插入(高级用法)
H5画布 canvas(一)canvas简介、绘制圆形矩形、案例饼状图绘制
6-24漏洞利用-vnc密码破解
datax与datax-web安装部署









