File tree 2 files changed +41
-0
lines changed
2 files changed +41
-0
lines changed Original file line number Diff line number Diff line change 41
41
83|[ Remove Duplicates from Sorted List] ( ./0083-remove-duplicates-from-sorted-list.js ) |Easy|
42
42
88|[ Merge Sorted Array] ( ./0088-merge-sorted-array.js ) |Easy|
43
43
94|[ Binary Tree Inorder Traversal] ( ./0094-binary-tree-inorder-traversal.js ) |Easy|
44
+ 102|[ Binary Tree Level Order Traversal] ( ./0102-binary-tree-level-order-traversal.js ) |Medium|
44
45
118|[ Pascal's Triangle] ( ./0118-pascals-triangle.js ) |Easy|
45
46
119|[ Pascal's Triangle II] ( ./0119-pascals-triangle-ii.js ) |Easy|
46
47
121|[ Best Time to Buy and Sell Stock] ( ./0121-best-time-to-buy-and-sell-stock.js ) |Easy|
Original file line number Diff line number Diff line change
1
+ /**
2
+ * 102. Binary Tree Level Order Traversal
3
+ * https://leetcode.com/problems/binary-tree-level-order-traversal/
4
+ * Difficulty: Medium
5
+ *
6
+ * Given the root of a binary tree, return the level order traversal of its
7
+ * nodes' values. (i.e., from left to right, level by level).
8
+ */
9
+
10
+ /**
11
+ * Definition for a binary tree node.
12
+ * function TreeNode(val, left, right) {
13
+ * this.val = (val===undefined ? 0 : val)
14
+ * this.left = (left===undefined ? null : left)
15
+ * this.right = (right===undefined ? null : right)
16
+ * }
17
+ */
18
+ /**
19
+ * @param {TreeNode } root
20
+ * @return {number[][] }
21
+ */
22
+ var levelOrder = function ( root ) {
23
+ const result = [ ] ;
24
+
25
+ traverse ( result , root ) ;
26
+
27
+ return result ;
28
+ } ;
29
+
30
+ function traverse ( result , node , level = 0 ) {
31
+ if ( ! node ) {
32
+ return [ ] ;
33
+ }
34
+
35
+ result [ level ] = result [ level ] || [ ] ;
36
+ result [ level ] . push ( node . val ) ;
37
+
38
+ traverse ( result , node . left , level + 1 ) ;
39
+ traverse ( result , node . right , level + 1 ) ;
40
+ }
You can’t perform that action at this time.
0 commit comments