본문 바로가기
leetcode 풀이/DFS, BFS

leetcode 94. Binary Tree Inorder Traversal

by 튼튼한개발자 2023. 1. 22.

전형적인 트리순회에 대한 문제이며, 순회하는 방법은 inorder이다.

재귀방식과 iterate한 방식이 있는데, 순회방법은 stack을 이용하면 좋다

class TreeNode(object):
    def __init__(self, val=0, left=None, right=None):
        self.val = val
        self.left = left
        self.right = right


class Solution(object):
    def inorderTraversal(self, root):
        """
        :type root: TreeNode
        :rtype: List[int]
        """

        res = []
        stack = []
        curr = root
        while stack or root:
            if curr :
                stack.append(curr)
                curr = curr.left
            else :
                curr = stack.pop()
                res.append(curr.val)
                curr = curr.right
        return res

 

댓글