First Chapter
GitBook allows you to organize your book into chapters, each chapter is stored in a separate file like this one.
Analysis
Problems
public List<Integer> rightSideView(TreeNode root) {
ArrayList<Integer> res = new ArrayList<Integer>();
Queue<TreeNode> q = new LinkedList<TreeNode>();
//corner case
if(root==null) return res;
//initial
q.add(root);
while(!q.isEmpty()) {
int sizeOfq= q.size();
for(int i=0; i<sizeOfq; i++) {
TreeNode node = q.poll();
if(node.left != null) q.add(node.left);
if(node.right != null) q.add(node.right);
if(i == sizeOfq-1) res.add(node.val);
}
}
return res;
}