515. 在每个树行中找最大值

给定一棵二叉树的根节点 root ,请找出该二叉树中每一层的最大值。

示例1:

输入: root = [1,3,2,5,3,null,9]
输出: [1,3,9]
示例2:

输入: root = [1,2,3]
输出: [1,3]

提示:

二叉树的节点个数的范围是 [0,104]
-231 <= Node.val <= 231 - 1

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/find-largest-value-in-each-tree-row
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

分析

分析参考
https://github.com/youngyangyang04/leetcode-master/blob/master/problems/0102.%E4%BA%8C%E5%8F%89%E6%A0%91%E7%9A%84%E5%B1%82%E5%BA%8F%E9%81%8D%E5%8E%86.md
在102题的基础上,每一层获取一个最大值即可

题解(Java)

/*** Definition for a binary tree node.* public class TreeNode {*     int val;*     TreeNode left;*     TreeNode right;*     TreeNode() {}*     TreeNode(int val) { this.val = val; }*     TreeNode(int val, TreeNode left, TreeNode right) {*         this.val = val;*         this.left = left;*         this.right = right;*     }* }*/
class Solution {public List<Integer> largestValues(TreeNode root) {List<Integer> ans = new ArrayList<>();if (root == null) return ans;Queue<TreeNode> q = new LinkedList();q.offer(root);while (!q.isEmpty()) {int size = q.size(), temp = Integer.MIN_VALUE;while (size > 0) {TreeNode node = q.poll();size--;temp = Math.max(temp, node.val);if (node.left != null) q.offer(node.left);if (node.right != null)  q.offer(node.right);}ans.add(temp);}return ans;}
}

515. 在每个树行中找最大值(中等 树 广度优先搜索 二叉树)相关推荐

  1. LeetCode二叉树系列——515.最每个树行中找最大值

    一.题目描述: 515. 在每个树行中找最大值 难度中等265收藏分享切换为英文接收动态反馈 给定一棵二叉树的根节点 root ,请找出该二叉树中每一层的最大值. 二.题解 对二叉树不了解的,可以先看 ...

  2. leetcode:515. 在每个树行中找最大值

    题目来源 515. 在每个树行中找最大值 题目描述 题目解析 层次遍历 /*** Definition for a binary tree node.* public class TreeNode { ...

  3. 【二叉树】515. 在每个树行中找最大值

    在每个树行中找最大值 给定一棵二叉树的根节点 root ,请找出该二叉树中每一层的最大值. /*** Definition for a binary tree node.* public class ...

  4. 深度优先遍历和广度优先遍历_利用广度优先搜索解LeetCode第515题:在每个树行中找最大值...

    题目描述(难度中等) 您需要在二叉树的每一行中找到最大的值. 示例: 输入: 1/ 3 2/ 5 3 9 输出: [1, 3, 9] 解题思路 利用广度优先搜索找到每一层的所有数字,将其中最大的数字存 ...

  5. leetcode系列-515.在每个树行中找最大值

    题目描述: 给定一棵二叉树的根节点 root ,请找出该二叉树中每一层的最大值. 示例1: 输入: root = [1,3,2,5,3,null,9] 输出: [1,3,9]示例2: 输入: root ...

  6. 515. 在每个树行中找最大值

    您需要在二叉树的每一行中找到最大的值. 示例: 输入: 1/ \3 2/ \ \ 5 3 9 输出: [1, 3, 9] 在真实的面试中遇到过这道题? class Solution {public L ...

  7. leetcode 515. 在每个树行中找最大值(层序遍历06)

    一:题目 二:上码 /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* Tre ...

  8. LeetCode 515. 在每个树行中找最大值(层序遍历)

    1. 题目 您需要在二叉树的每一行中找到最大的值. 示例: 输入: 1/ \3 2/ \ \ 5 3 9 输出: [1, 3, 9] 来源:力扣(LeetCode) 链接:https://leetco ...

  9. LeetCode 515. 在每个树行中找最大值(广度优先搜索)

    题目描述 您需要在二叉树的每一行中找到最大的值. 思路 详见链接 代码 class TreeNode:def __init__(self,x):self.val = xself.left = None ...

  10. 【LeetCode-515 | 在每个树行中寻找最大值】

    1.题目描述 2.题解 #include <iostream> #include <vector> #include <queue> #include <st ...

最新文章

  1. Kubernetes 日志收集的原理,看这一篇就够了
  2. iOS下Html页面中input获取焦点弹出键盘时挡住input解决方案
  3. 数据结构与算法--利用栈实现队列
  4. linux shell数组参数传递参数,在bash中将数组作为参数传递
  5. C语言中如何将小数或整数和字符串合二为一
  6. MyBatis3源码解析(2)数据库连接
  7. 【windows核心编程】线程局部存储TLS
  8. 华为路由器时间同步_4G网络变WIFI,华为4G路由2 Pro让上网变得更简单
  9. java column_@Column注解属性详解
  10. html游戏脚本,网页游戏脚本软件道
  11. 高性能diffpatch算法 -- 如何将微信Apk的官方增量包20.4M缩小到7.0M
  12. 耿建超英语语法---陈述句(2)
  13. Linux 管理 ipod,如何使用Rhythmbox从Linux桌面管理iPod
  14. 王强是如何学计算机的,浙江大学计算机科学与技术学院导师介绍:王强
  15. 小米平板2刷哪个系统更流畅_Windows 10版小米平板2简测:流畅度不及自家MIUI版...
  16. dependency check工具的使用
  17. HTML5、css3、js实现3D相册
  18. Python 的文件定位
  19. 3、Spark 和 D3.js 分析航班大数据
  20. python处理xml文件_Python处理XML之DOM解析

热门文章

  1. 小白刷LeeCode(算法篇)3
  2. DBA01 - 数据库服务概述 构建MySQL服务器、数据库基本管理 MySQL数据类型
  3. 毛纲源-考研数学(数学一)常考题型及其解题方法技巧归纳--华中科技大学出版社
  4. python webdriver firefox 登录126邮箱,先添加联系人,然后进入首页发送邮件,带附件。...
  5. Occam‘s razor - 奥卡姆剃刀
  6. 老梁说天下——慈善的红与黑
  7. python版本的flapy bird_python实现简单flappy bird
  8. Ceres的Options详解
  9. win10不兼容 软件 ietest
  10. 股票交易接口api的协议