Skip to content

Commit f4f6554

Browse files
committed
level
1 parent 0e7e2ff commit f4f6554

File tree

2 files changed

+63
-32
lines changed

2 files changed

+63
-32
lines changed

src/levelOrder/Solution.java

+32-32
Original file line numberDiff line numberDiff line change
@@ -1,45 +1,45 @@
11
import java.util.*;
22

33
class TreeNode {
4-
int val;
5-
TreeNode left;
6-
TreeNode right;
7-
TreeNode(int x) {
8-
val = x;
9-
}
4+
int val;
5+
TreeNode left;
6+
TreeNode right;
7+
TreeNode(int x) {
8+
val = x;
9+
}
1010
}
1111

1212
public class Solution {
1313

14-
public ArrayList<ArrayList<Integer>> levelOrder(TreeNode root) {
15-
ArrayList<ArrayList<Integer>> ret = new ArrayList<ArrayList<Integer>>();
16-
if (root == null) return ret;
14+
public ArrayList<ArrayList<Integer>> levelOrder(TreeNode root) {
15+
ArrayList<ArrayList<Integer>> ret = new ArrayList<ArrayList<Integer>>();
16+
if (root == null) return ret;
1717

18-
ArrayList<TreeNode> currLevel, nextLevel;
19-
currLevel = new ArrayList<TreeNode>();
20-
currLevel.add(root);
18+
ArrayList<TreeNode> currLevel, nextLevel;
19+
currLevel = new ArrayList<TreeNode>();
20+
currLevel.add(root);
2121

22-
while (!currLevel.isEmpty()) {
23-
nextLevel = new ArrayList<TreeNode>();
24-
ArrayList<Integer> intList = new ArrayList<Integer>();
25-
for (TreeNode e : currLevel) {
26-
intList.add(e.val);
27-
if (e.left != null) nextLevel.add(e.left);
28-
if (e.right != null) nextLevel.add(e.right);
29-
}
22+
while (!currLevel.isEmpty()) {
23+
nextLevel = new ArrayList<TreeNode>();
24+
ArrayList<Integer> intList = new ArrayList<Integer>();
25+
for (TreeNode e : currLevel) {
26+
intList.add(e.val);
27+
if (e.left != null) nextLevel.add(e.left);
28+
if (e.right != null) nextLevel.add(e.right);
29+
}
3030

31-
ret.add(intList);
32-
currLevel = nextLevel;
33-
}
34-
return ret;
31+
ret.add(intList);
32+
currLevel = nextLevel;
3533
}
34+
return ret;
35+
}
3636

37-
public static void main(String[] args) {
38-
Solution sol = new Solution();
39-
TreeNode t = new TreeNode(1);
40-
t.left = new TreeNode(2);
41-
t.right = new TreeNode(44);
42-
t.left.left = new TreeNode(3);
43-
System.out.println(sol.levelOrder(t));
44-
}
37+
public static void main(String[] args) {
38+
Solution sol = new Solution();
39+
TreeNode t = new TreeNode(1);
40+
t.left = new TreeNode(2);
41+
t.right = new TreeNode(44);
42+
t.left.left = new TreeNode(3);
43+
System.out.println(sol.levelOrder(t));
44+
}
4545
}

src/levelOrder/Solution.js

+31
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
/* class TreeNode {
2+
* int val;
3+
* TreeNode left;
4+
* TreeNode right;
5+
* }
6+
*/
7+
8+
function levelOrder(root) {
9+
let ret = [];
10+
if (root == null) {
11+
return ret;
12+
}
13+
let currLevel = [root];
14+
let nextLevel = [];
15+
while (currLevel.length > 0) {
16+
nextLevel = [];
17+
let intList = [];
18+
for (let e of currLevel) {
19+
intList.push(e.val);
20+
if (e.left != null) {
21+
nextLevel.push(e.left);
22+
}
23+
if (e.right != null) {
24+
nextLevel.push(e.right);
25+
}
26+
}
27+
ret.push(...intList);
28+
currLevel = nextLevel;
29+
}
30+
return ret;
31+
}

0 commit comments

Comments
 (0)