515. 在每个树行中找最大值
您需要在二叉树的每一行中找到最大的值。
示例:
输入: 1 / \ 3 2 / \ \ 5 3 9 输出: [1, 3, 9]
在真实的面试中遇到过这道题?
class Solution { public List<Integer> largestValues(TreeNode root) { List<Integer> res = new ArrayList<>(); Queue<TreeNode> queue = new LinkedList<>(); if(root == null) return res; queue.add(root); while(!queue.isEmpty()){ int size = queue.size(); int Max = Integer.MIN_VALUE; for(int i=0; i<size; i++){ TreeNode node = queue.poll(); if(node.val > Max) Max = node.val; if(node.left != null) queue.add(node.left); if(node.right != null) queue.add(node.right); } res.add(Max); } return res; } }