Invert Binary Tree

제로콜라좋아요·2024년 6월 2일
0

algorithem

목록 보기
14/37

문제설명

root이진 트리가 주어지면 트리를 반전하고 루트를 반환합니다 .

예시1:


입력: 루트 = [4,2,7,1,3,6,9]
출력: [4,7,2,9,6,3,1]

예시2


입력: 루트 = [2,1,3]
출력: [2,3,1]

예시3:

입력: 루트 = []
출력: []


class Solution:
   def invertTree(self, root: Optional[TreeNode]) -> Optional[TreeNode]:
        if not root:
            return None
        
        root.left, root.right = root.right, root.left
        
        self.invertTree(root.left)
        self.invertTree(root.right)
        
        return root

<내 코드의 흐름>
1. invertTree 메서드는 트리의 루트를 입력받아 트리를 뒤집고, 결과로 루트를 반환합니다.
2. 루트가 None인 경우, None을 반환합니다.
3.현재 노드의 왼쪽 자식과 오른쪽 자식을 서로 교환합니다.
4.재귀적으로 왼쪽 서브트리와 오른쪽 서브트리를 뒤집습니다.
5.뒤집힌 트리의 루트를 반환합니다.

profile
개발자계의 제로콜라

0개의 댓글