513. Find Bottom Left Tree Value

来源:互联网 发布:数据库resource权限 编辑:程序博客网 时间:2024/06/09 22:48

Given a binary tree, find the leftmost value in the last row of the tree.

Example 1:

Input:    2   / \  1   3Output:1

Example 2:

Input:        1       / \      2   3     /   / \    4   5   6       /      7Output:7

Note:You may assume the tree (i.e., the given root node) is notNULL.

Subscribe to see which companies asked this question.


Solution:

Tips:

recursion, root, right, left


Java Code:

/** * Definition for a binary tree node. * public class TreeNode { *     int val; *     TreeNode left; *     TreeNode right; *     TreeNode(int x) { val = x; } * } */public class Solution {    public int findBottomLeftValue(TreeNode root) {        Queue<TreeNode> queue = new LinkedList<>();        TreeNode node = root;        queue.add(root);                while (!queue.isEmpty()) {            int queueSize = queue.size();            for (int i = 0; i < queueSize; i++) {                node = queue.poll();                                if (node.right != null) {                    queue.add(node.right);                }                if (node.left != null) {                    queue.add(node.left);                }            }        }                return node.val;    }    }


0 0
原创粉丝点击