본문 바로가기

[ leetcode ]

94. Binary Tree Inorder Traversal

반응형
SMALL

주어진 listnode를 중위 순회된 list로 변환하는 문제다.

 


solution 1.

중위 순회는 현재 노드에서 왼쪽 노드를 먼저 순회한 후, root 노드를 순회한다. 그 후, 오른쪽 노드를 순회한다.

방법은 재귀를 이용하여 노드를 순회하도록 한다.

 

class Solution:
    def inorderTraversal(self, root: Optional[TreeNode]) -> List[int]:
        '전위 순회에서 중위 순회로 변경'
        def travel(node, li):
            if node:
                return travel(node.left, li) + [node.val] + travel(node.right, li)
            else:
                return []        
        return travel(root, [])

현재 노드가 존재하지 않을 경우 빈 리스트를 리턴한다.

반응형
LIST

'[ leetcode ]' 카테고리의 다른 글

118. Pascal's Triangle  (0) 2022.12.27
101. Symmetric Tree  (0) 2022.12.20
88. Merge Sorted Array  (0) 2022.12.18
69. Sqrt(x)  (0) 2022.12.17
66. Plus One  (0) 2022.12.16