Given a binary tree, find the leftmost value in the last row of the tree.
Example 1:
Input: 2 / 1 3 Output: 1
Example 2:
Input: 1 / 2 3 / / 4 5 6 / 7 Output: 7
Note: You may assume the tree (i.e., the given root node) is not NULL.
Hide Company Tags
1 /** 2 * Definition for a binary tree node. 3 * public class TreeNode { 4 * int val; 5 * TreeNode left; 6 * TreeNode right; 7 * TreeNode(int x) { val = x; } 8 * } 9 */ 10 public class Solution { 11 private int result = 0, height = 0; 12 public int findBottomLeftValue(TreeNode root) { 13 helper(root, 1); 14 return result; 15 } 16 17 private void helper(TreeNode root, int depth) { 18 if (root == null) return; 19 20 if (height < depth) { 21 result = root.val; 22 height = depth; 23 } 24 25 helper(root.left, depth + 1); 26 helper(root.right, depth + 1); 27 } 28 }
时间: 2024-10-27 14:18:31