Skip to content

Commit 283e09e

Browse files
solves binary tree level order traversal in python
1 parent b98577d commit 283e09e

File tree

2 files changed

+36
-1
lines changed

2 files changed

+36
-1
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
| 100 | [Same Tree](https://leetcode.com/problems/same-tree) | Easy | [![Java](https://img.icons8.com/color/40/000000/java-coffee-cup-logo.png)](src/SameTree.java) [![Python](https://img.icons8.com/color/35/000000/python.png)](python/same_tree.py) |
3232
| 101 | [Symmetric Tree](https://leetcode.com/problems/symmetric-tree) | Easy | [![Java](https://img.icons8.com/color/40/000000/java-coffee-cup-logo.png)](src/SymmetricTree.java) [![Python](https://img.icons8.com/color/35/000000/python.png)](python/symmetric_tree.py) |
3333
| 104 | [Maximum Depth of Binary Tree](https://leetcode.com/problems/maximum-depth-of-binary-tree) | Easy | [![Java](https://img.icons8.com/color/40/000000/java-coffee-cup-logo.png)](src/MaximumDepthOfBinaryTree.java) [![Python](https://img.icons8.com/color/35/000000/python.png)](python/maximum_depth_of_binary_tree.py) |
34-
| 107 | [Binary Tree Level Order Traversal II](https://leetcode.com/problems/binary-tree-level-order-traversal-ii) | Easy | [![Java](https://img.icons8.com/color/40/000000/java-coffee-cup-logo.png)](src/BinaryTreeLevelOrderTraversalII.java) |
34+
| 107 | [Binary Tree Level Order Traversal II](https://leetcode.com/problems/binary-tree-level-order-traversal-ii) | Easy | [![Java](https://img.icons8.com/color/40/000000/java-coffee-cup-logo.png)](src/BinaryTreeLevelOrderTraversalII.java) [![Python](https://img.icons8.com/color/35/000000/python.png)](python/binary_tree_level_order_traversal_ii.py) |
3535
| 108 | [Convert Sorted Array To Binary Search Tree](https://leetcode.com/problems/convert-sorted-array-to-binary-search-tree) | Easy | [![Java](https://img.icons8.com/color/40/000000/java-coffee-cup-logo.png)](src/ConvertSortedArrayToBinarySearchTree.java) |
3636
| 110 | [Balanced Binary Tree](https://leetcode.com/problems/balanced-binary-tree) | Easy | [![Java](https://img.icons8.com/color/40/000000/java-coffee-cup-logo.png)](src/BalancedBinaryTree.java) |
3737
| 111 | [Minimum Depth of Binary Tree](https://leetcode.com/problems/minimum-depth-of-binary-tree) | Easy | [![Java](https://img.icons8.com/color/40/000000/java-coffee-cup-logo.png)](src/MinimumDepthOfBinaryTree.java) |
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
# Definition for a binary tree node.
2+
from typing import List
3+
from collections import deque
4+
5+
6+
class TreeNode:
7+
def __init__(self, val=0, left=None, right=None):
8+
self.val = val
9+
self.left = left
10+
self.right = right
11+
12+
13+
class Solution:
14+
def levelOrderBottom(self, root: TreeNode) -> List[List[int]]:
15+
if root is None:
16+
return []
17+
18+
queue = deque()
19+
queue.append(root)
20+
result = []
21+
current_level = []
22+
23+
while len(queue):
24+
current_level_length = len(queue)
25+
for _ in range(current_level_length):
26+
current = queue.popleft()
27+
current_level.append(current.val)
28+
if current.left:
29+
queue.append(current.left)
30+
if current.right:
31+
queue.append(current.right)
32+
result.append(current_level)
33+
current_level = []
34+
35+
return result[::-1]

0 commit comments

Comments
 (0)