Skip to content

Latest commit

 

History

History
33 lines (31 loc) · 878 Bytes

199.md

File metadata and controls

33 lines (31 loc) · 878 Bytes

199. Binary Tree Right Side View

Solution 1 (time O(n), space O(n))

# BFS
# Definition for a binary tree node.
# 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 rightSideView(self, root):
        """
        :type root: TreeNode
        :rtype: List[int]
        """
        if not root:
            return []
        ans = []
        cur_level = [root]
        while cur_level:
            ans.append(cur_level[-1].val)
            new_level = []
            for p in cur_level:
                if p.left:
                    new_level.append(p.left)
                if p.right:
                    new_level.append(p.right)
            cur_level = new_level
        return ans