LeetCode 513 : Find Bottom Left Tree Value
Solution to Find Bottom Left Tree Value Problem.
Do level order traversal and keep track of left most node when we start processing a level. Return the final value of leftmostNode.
class Solution {
public int findBottomLeftValue(TreeNode root) {
Queue<TreeNode> q = new LinkedList<>();
q.add(root);
TreeNode leftmostNode = root;
while(!q.isEmpty()) {
int ls = q.size();
for(int i=0;i<ls;i++) {
TreeNode node = q.remove();
if(i==0) {
leftmostNode = node;
}
if(node.left != null)
q.add(node.left);
if(node.right != null)
q.add(node.right);
}
}
return leftmostNode.val;
}
}