🖥️ 문제 풀이/리트코드(Leetcode)
[LeetCode 해석 및 풀이] 226. Invert Binary Tree (이진 트리 뒤집기)
뒬탕
2024. 7. 4. 20:35
반응형
LeetCode 문제 해석 및 풀이 방법
문제 226. Invert Binary Tree(이진 트리 뒤집기)
문제 설명
영문
Given the root of a binary tree, invert the tree, and return its root.
한글
이진트리의 root가 주어지면, 트리를 뒤집고 root를 반환하십시
제한조건
- The number of nodes in the tree is in the range [0, 100].
- -100 <= Node.val <= 100
입출력 예
입력 | 출력 |
root = [4,2,7,1,3,6,9] | [4,7,2,9,6,3,1] |
root = [2,1,3] | [2,3,1] |
root = [] | [] |
해답 및 해설
파이썬 (Python)
class Solution:
def invertTree(self, root: Optional[TreeNode]) -> Optional[TreeNode]:
def invert(tree_node):
if not tree_node:
return
invert(tree_node.left)
invert(tree_node.right)
tree_node.left, tree_node.right = tree_node.right, tree_node.left
invert(root)
return root
재귀로 하위 트리를 모두 뒤집어주는 방식을 이용
반응형