@@ -55,13 +55,100 @@ return its level order traversal as:<br />
55
55
### ** Python3**
56
56
57
57
``` python
58
-
58
+ # Definition for a binary tree node.
59
+ # class TreeNode:
60
+ # def __init__(self, x):
61
+ # self.val = x
62
+ # self.left = None
63
+ # self.right = None
64
+
65
+ class Solution :
66
+ def levelOrder (self , root : TreeNode) -> List[List[int ]]:
67
+ if root is None :
68
+ return []
69
+ res = []
70
+ q = []
71
+ q.append(root)
72
+ while q:
73
+ size = len (q)
74
+ t = []
75
+ for _ in range (size):
76
+ node = q.pop(0 )
77
+ if node.left is not None :
78
+ q.append(node.left)
79
+ if node.right is not None :
80
+ q.append(node.right)
81
+ t.append(node.val)
82
+ res.append(t)
83
+ return res
59
84
```
60
85
61
86
### ** Java**
62
87
63
88
``` java
89
+ /**
90
+ * Definition for a binary tree node.
91
+ * public class TreeNode {
92
+ * int val;
93
+ * TreeNode left;
94
+ * TreeNode right;
95
+ * TreeNode(int x) { val = x; }
96
+ * }
97
+ */
98
+ class Solution {
99
+ public List<List<Integer > > levelOrder (TreeNode root ) {
100
+ if (root == null ) return Collections . emptyList();
101
+ Deque<TreeNode > q = new ArrayDeque<> ();
102
+ q. offer(root);
103
+ List<List<Integer > > res = new ArrayList<> ();
104
+ while (! q. isEmpty()) {
105
+ int size = q. size();
106
+ List<Integer > t = new ArrayList<> ();
107
+ while (size-- > 0 ) {
108
+ TreeNode node = q. poll();
109
+ t. add(node. val);
110
+ if (node. left != null ) q. offer(node. left);
111
+ if (node. right != null ) q. offer(node. right);
112
+ }
113
+ res. add(t);
114
+ }
115
+ return res;
116
+ }
117
+ }
118
+ ```
64
119
120
+ ### ** C++**
121
+
122
+ ``` cpp
123
+ /* *
124
+ * Definition for a binary tree node.
125
+ * struct TreeNode {
126
+ * int val;
127
+ * TreeNode *left;
128
+ * TreeNode *right;
129
+ * TreeNode(int x) : val(x), left(NULL), right(NULL) {}
130
+ * };
131
+ */
132
+ class Solution {
133
+ public:
134
+ vector<vector<int >> levelOrder(TreeNode* root) {
135
+ if (!root) return {};
136
+ vector<vector<int >> res;
137
+ queue<TreeNode* > q{{root}};
138
+ while (!q.empty()) {
139
+ vector<int > oneLevel;
140
+ for (int i = q.size(); i > 0; --i) {
141
+ TreeNode* t = q.front();
142
+ q.pop();
143
+ oneLevel.push_back(t->val);
144
+ if (t->left) q.push(t->left);
145
+ if (t->right) q.push(t->right);
146
+ }
147
+ res.push_back(oneLevel);
148
+ }
149
+ return res;
150
+ }
151
+ };
65
152
```
66
153
67
154
### **...**
0 commit comments