给定一个二叉树,在树的最后一行找到最左边的值。
示例 1:
输入: 2 / \ 1 3输出:1
1 import java.util.LinkedList; 2 import java.util.Queue; 3 4 public class FindBottomLeftValue { 5 static class TreeNode { 6 int val; 7 TreeNode left; 8 TreeNode right; 9 TreeNode(int x) {10 val = x;11 }12 }13 public int findBottomLeftValue(TreeNode root) {14 Queuequeue = new LinkedList<>();15 TreeNode temp = root;16 queue.add(root);17 while(!queue.isEmpty()) {18 temp = queue.remove();19 //先将右子节点添加,从右往左,则可以最后访问最左侧节点20 if(temp.right != null) {21 queue.add(temp.right);22 }23 if(temp.left != null) {24 queue.add(temp.left);25 }26 }27 return temp.val;28 } 29 }