https://leetcode.com/problems/binary-tree-level-order-traversal-ii/

 

Binary Tree Level Order Traversal II - LeetCode

Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview.

leetcode.com

 

꽤나 쉽구만.

한레벨 한레벨씩 돌면서 리스트를 만들고 마지막에 뒤집어주기만 하면 된다.

이보다 심플하고 효율적인 솔루션은 없을것이라고 자신한다!!

 

class Solution:
    def levelOrderBottom(self, root: Optional[TreeNode]) -> List[List[int]]:
        if not root:
            return []
        
        level = [root]
        result = []
        
        while level:
            result.append([])
            nlevel = []
            
            for node in level:
                if node.left:
                    nlevel.append(node.left)
                if node.right:
                    nlevel.append(node.right)
                result[-1].append(node.val)
            level = nlevel
        
        return reversed(result)

낫배드!!

 

다른 사람 솔루션을 볼까? 아마 더 효율적인 솔루션은 없을거같고 숏코딩은 있을거같다

 

다른 사람들 솔루션도 비슷하다 ㅇㅇ

+ Recent posts