Skip to content

Commit 44f15c4

Browse files
committed
Dec 25
1 parent dd1f653 commit 44f15c4

File tree

2 files changed

+46
-2
lines changed

2 files changed

+46
-2
lines changed
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
from collections import deque
2+
from typing import List, Optional
3+
4+
5+
# Definition for a binary tree node.
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 largestValues(self, root: Optional[TreeNode]) -> List[int]:
15+
result = []
16+
level = deque([root] if root else [])
17+
while level:
18+
max_val = float('-inf')
19+
n_level = len(level)
20+
for _ in range(n_level):
21+
node = level.popleft()
22+
max_val = max(max_val, node.val)
23+
level.extend(filter(None, (node.left, node.right)))
24+
result.append(max_val)
25+
return result
26+
27+
28+
def main():
29+
root = TreeNode(1)
30+
root.left = TreeNode(3)
31+
root.right = TreeNode(2)
32+
root.left.left = TreeNode(5)
33+
root.left.right = TreeNode(3)
34+
root.right.right = TreeNode(9)
35+
assert Solution().largestValues(root) == [1, 3, 9]
36+
37+
root = TreeNode(1)
38+
root.left = TreeNode(2)
39+
root.right = TreeNode(3)
40+
assert Solution().largestValues(root) == [1, 3]
41+
42+
43+
if __name__ == '__main__':
44+
main()

2024-12-December-LeetCoding-Challenge/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
| December 22 | [2940. Find Building Where Alice and Bob Can Meet](https://leetcode.com/problems/find-building-where-alice-and-bob-can-meet/) | Hard | Unsolved |
2828
| December 23 | [2471. Minimum Number of Operations to Sort a Binary Tree by Level](https://leetcode.com/problems/minimum-number-of-operations-to-sort-a-binary-tree-by-level/) | Medium | Solved |
2929
| December 24 | [3203. Find Minimum Diameter After Merging Two Trees](https://leetcode.com/problems/find-minimum-diameter-after-merging-two-trees/) | Hard | Unsolved |
30-
| December 25 | []() | | |
30+
| December 25 | [515. Find Largest Value in Each Tree Row](https://leetcode.com/problems/find-largest-value-in-each-tree-row/) | Medium | Solved |
3131
| December 26 | []() | | |
3232
| December 27 | []() | | |
3333
| December 28 | []() | | |
@@ -39,5 +39,5 @@
3939
| Level | Problems | Solved | Unsolved |
4040
| --- | --- | --- | --- |
4141
| Easy | 5 | 5 | 0 |
42-
| Medium | 16 | 10 | 6 |
42+
| Medium | 17 | 11 | 6 |
4343
| Hard | 3 | 0 | 3 |

0 commit comments

Comments
 (0)