Skip to content

Latest commit

 

History

History
31 lines (27 loc) · 845 Bytes

bfs_template.md

File metadata and controls

31 lines (27 loc) · 845 Bytes
public class Solution{
    public ArrayList<ArrayList<Integer>> levelOrder(TreeNode root){
        ArrayList result = new ArrayList();
        
        if(root == null){
            return result;
        }
        
        Queue<TreeNode> queue = new LinkedList<TreeNode>();
        queue.offer(root);
        
        while(!queue.isEmpty()){
            ArrayList<Integer> level = new ArrayList<Integer>();
            int size = queue.size();
            for(int i = 0; i < size; i++) {
              TreeNode head = queue.poll();
              level.add(head.val);
              if(head.left != null){
                  queue.offer(head.left);
              }
              if(head.right != null){
                  queue.offer(head.right);
              }
            }
            result.add(level);
        }
        
    }
}