Leetcode Python - 104. Maximum Depth of Binary Tree
Leetcode #104 - Maximum Depth of Binary Tree
이제 blind 75 leetcode를 풀어보겠습니다. https://leetcode.com/discuss/interview-question/460599/Blind-75-LeetCode-Questions
리트코드의 문제 104 ‘Maximum Depth of Binary Tree’을 파이썬으로 풀어 보도록 하겠습니다.
포인트는 post-order로 traversal 하면서 depth로 1씩 더해주는 것입니다.
전체 코드는 아래와 같습니다.
class Solution:
def maxDepth(self, root: TreeNode) -> int:
if not root:
return 0
def check(root):
if not root:
return 0
left = check(root.left)
right = check(root.right)
return 1 + max(left, right)
return check(root)
시간복잡도는
- O(n) : 모든 노드 한번씩 방문
공간복잡도는
- O(h) : h는 깊이