LeetCode@513_Find_Bottom_Left_Tree_Value

来源:互联网 发布:python arima 编辑:程序博客网 时间:2024/06/06 14:10

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 not NULL.


java:

/** * 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){//记录BFS坐左边的数作为resif(root == null) return 0;int res = 0;Queue<TreeNode> queue = new LinkedList<>();queue.add(root);while(!queue.isEmpty()){int size = queue.size();for(int i = 0;i<size;i++){TreeNode currNode = queue.poll();if(i == 0) res = currNode.val;if(currNode.left != null) queue.add(currNode.left);if(currNode.right != null) queue.add(currNode.right);}}return res;}}