给定一棵二叉树,采用广度优先搜索 BFS 返回其右视图,其中右视图中的每个节点都是该层最右侧的节点。横线处应填写
from collections import deque
class TreeNode:
def __init__(self, val=0, left=None, right=None):
self.val = val
self.left = left
self.right = right
def rightSideView(root):
result = []
if not root:
return result
q = deque([root])
while q:
sz = len(q)
for i in range(sz):
node = q.popleft()
__________________________
if node.left:
q.append(node.left)
if node.right:
q.append(node.right)
return result
if i == 0: result.append(node.val)
if i == sz - 1: result.append(node.val)
result.append(q[0].val)
if node.right: result.append(node.right.val)