package problems.medium;
import problems.utils.TreeNode;
import java.util.LinkedList;
import java.util.List;
/**
* Created by sherxon on 2/12/17.
*/
/**
* Given a binary tree, find the leftmost value in the last row of the tree.
*/
/**
* We get left side view of binary tree and return last element.
* */
public class FindLeftMostElement {
public int findBottomLeftValue(TreeNode root) {
LinkedList<Integer> list=new LinkedList<>();
find(root, list, 0);
return list.getLast();
}
void find(TreeNode x, List<Integer> list, int level){
if(x==null)return;
if(list.size()==level)list.add(x.val);
find(x.left, list, level+1);
find(x.right, list, level+1);
}
}