본문 바로가기
Coding Test/LeetCode

[LeetCode] 104. Maximum Depth of Binary Tree [Python(파이썬)]

'파이썬 알고리즘 인터뷰'를 보고 작성한 글입니다. 😀
문제 👉 <Maximum Depth of Binary Tree - LeetCode>

1. 문제 (이진 트리의 최대 깊이)

이진 트리의 최대 깊이를 구하라.

2. 풀이

BFS를 이용한 풀이

3. 코드

# Definition for a binary tree node.
# class TreeNode:
#     def __init__(self, val=0, left=None, right=None):
#         self.val = val
#         self.left = left
#         self.right = right
class Solution:
    def maxDepth(self, root: TreeNode) -> int:
        if root is None: return 0

        q = collections.deque([root])
        depth = 0

        while q:
            depth += 1
            for _ in range(len(q)):
                cur = q.popleft()
                if cur.left:
                    q.append(cur.left)
                if cur.right:
                    q.append(cur.right)

        return depth
  • 결과 :
방식 Status Runtime Memory Language
BFS [Accepted] 48 ms 15.2 MB python3


References


🏋🏻 개인적으로 공부한 내용을 기록하고 있습니다.
잘못된 부분이 있다면 과감하게 지적해주세요!! 🏋

댓글