Skip to content

Commit f53624e

Browse files
authored
1
1
1 parent fa27006 commit f53624e

File tree

1 file changed

+59
-0
lines changed

1 file changed

+59
-0
lines changed

2018.12.10-leetcode107/fish.md

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
```
2+
public class Solution {
3+
private static LinkedList<List<Integer>> result = new LinkedList<>();
4+
5+
public static void traversalBinaryTree(TreeNode node) {
6+
if (node != null) {
7+
List<Integer> list = new ArrayList<>(node.getVal());
8+
list.add(node.getVal());
9+
result.addFirst(list);
10+
11+
TreeNode left = node.getLeft();
12+
TreeNode right = node.getRight();
13+
traversalBinaryTree(left, 1);
14+
traversalBinaryTree(right, 1);
15+
}
16+
}
17+
18+
public static void traversalBinaryTree(TreeNode node, int level) {
19+
if (node != null) {
20+
List<Integer> list;
21+
if (result.size() == level) {
22+
list = new ArrayList<>();
23+
result.addFirst(list);
24+
}else {
25+
list = result.get(result.size() - 1- level);
26+
}
27+
list.add(node.getVal());
28+
29+
TreeNode left = node.getLeft();
30+
TreeNode right = node.getRight();
31+
32+
traversalBinaryTree(left, level + 1);
33+
traversalBinaryTree(right, level + 1);
34+
}
35+
}
36+
37+
public static void main(String[] args) {
38+
TreeNode r3r = new TreeNode(7, null, null);
39+
TreeNode r3l = new TreeNode(15, null, null);
40+
41+
// TreeNode l3r = new TreeNode(18, null, null);
42+
// TreeNode l3l = new TreeNode(22, null, null);
43+
44+
TreeNode l2r = new TreeNode(20, r3l, r3r);
45+
TreeNode l2l = new TreeNode(9, null, null);
46+
TreeNode root = new TreeNode(3, l2l, l2r);
47+
traversalBinaryTree(root);
48+
System.out.println(result);
49+
}
50+
}
51+
52+
@Data
53+
@AllArgsConstructor
54+
@NoArgsConstructor
55+
@ToString
56+
class TreeNode {
57+
private int val;
58+
private TreeNode left;
59+
private TreeNode right;

0 commit comments

Comments
 (0)