one line of code at a time
[leetcode] 199. Binary Tree Right Side View 파이썬 코드 본문
이진트리에서 맨 오른쪽에 있는 노드의 값만 리턴하는 문제이다.
https://leetcode.com/problems/binary-tree-right-side-view/description/

각 레벨에서 맨 오른쪽에 있는 노드들인 것을 알 수 있다.
BFS로 레벨 순회를 하면서 맨 마지막 인덱스의 값(val)을 배열에 넣어줄 것이다.
class Solution(object):
def rightSideView(self, root):
result = []
if not root:
return result
queue = [root]
while queue:
level = len(queue)
for i in range(level):
cnode = queue.pop(0)
if i == level - 1:
result.append(cnode.val)
if cnode.left:
queue.append(cnode.left)
if cnode.right:
queue.append(cnode.right)
return result

'leetcode' 카테고리의 다른 글
| [leetcode] 3. Longest Substring Without Repeating Characters 파이썬 코드 (0) | 2024.08.09 |
|---|---|
| [leetcode] 208. Implement Trie (Prefix Tree) 파이썬 코드 (0) | 2024.08.06 |
| [leetcode] 417. Pacific Atlantic Water Flow 파이썬 코드 (0) | 2024.08.05 |
| [leetcode] 53. Maximum Subarray 파이썬 코드 (0) | 2024.08.05 |
| [leetcode] 153. Find Minimum in Rotated Sorted Array 파이썬 코드 (0) | 2024.08.03 |