# Definition for a binary tree node. # class TreeNode: # def __init__(self, val=0, left=None, right=None): # self.val = val # self.left = left # self.right = right classSolution: defrightSideView(self, root: TreeNode) -> List[int]: queue = [root] ans = [] ifnot root: return ans
while queue: size = len(queue) ans.append(queue[size-1].val) for i inrange(size): # 需要用dequeue改造 p = queue.pop(0) if p.left: queue.append(p.left) if p.right: queue.append(p.right) return ans