BFS Traversal in Tree !

/*

class Node {

    int data;

    Node left, right;


    Node(int item) {

        data = item;

        left = right = null;

    }

}

*/

class Solution {

    public ArrayList<ArrayList<Integer>> levelOrder(Node root) {

        // Your code here

        ArrayList<ArrayList<Integer>> list = new ArrayList<>();

         if (root == null) return list;

         

        Queue<Node> q=new LinkedList<>();

         q.add(root);

        while(!q.isEmpty()){

            ArrayList<Integer> level = new ArrayList<>();

            for(int i=0; i<q.size(); i++){

            Node temp=q.poll();

            level.add(temp.data);

            if(temp.left!=null) q.add(temp.left);

            if(temp.right!=null) q.add(temp.right);

            }

            list.add(level);

            

        }

        return list;

    }

}

Comments

Popular Posts