Skip to content

Commit 79de82d

Browse files
authored
Create Binary_Tree_Level_Order_Traversal.java
1 parent be4b3f6 commit 79de82d

File tree

1 file changed

+38
-0
lines changed

1 file changed

+38
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
//Leetcode 102. Binary Tree Level Order Traversal
2+
//Question - https://leetcode.com/problems/binary-tree-level-order-traversal/
3+
4+
/**
5+
* Definition for a binary tree node.
6+
* public class TreeNode {
7+
* int val;
8+
* TreeNode left;
9+
* TreeNode right;
10+
* TreeNode(int x) { val = x; }
11+
* }
12+
*/
13+
class Solution {
14+
public List<List<Integer>> levelOrder(TreeNode root) {
15+
List<List<Integer>> result = new ArrayList<>();
16+
if(root==null) return result;
17+
Queue<TreeNode> q = new LinkedList<TreeNode>();
18+
19+
TreeNode curr = null;
20+
q.add(root);
21+
22+
while(q.isEmpty()==false){
23+
int nodesAtCurrLevel = q.size();
24+
//System.out.println(nodesAtCurrLevel);
25+
List<Integer> layer = new ArrayList<>();
26+
for(int i = 0 ; i < nodesAtCurrLevel ; i++){
27+
curr = q.poll();
28+
layer.add(curr.val);
29+
if(curr.left!=null) q.add(curr.left);
30+
if(curr.right!=null) q.add(curr.right);
31+
}
32+
result.add(layer);
33+
}
34+
35+
return result;
36+
37+
}
38+
}

0 commit comments

Comments
 (0)