LEETCODE 199. 二叉树的右视图

LEETCODE 199. 二叉树的右视图

题目描述

给定一棵二叉树,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。

示例:

输入: [1,2,3,null,5,null,4]
输出: [1, 3, 4]
解释:

1 <—
/ \
2 3 <—
\ \
5 4 <—

题目地址
中文版
英文版

 

代码实现

class Solution(object):
	def rightSideView(self, root):
		"""
		:type root: TreeNode
		:rtype: List[int]
		"""
		if not root:
			return []
		queue = [root]
		res = []
		while queue:
			size = len(queue)
			tmp = []
			for _ in xrange(size):
				node = queue.pop(0)
				tmp.append(node.val)
				if node.left:
					queue.append(node.left)
				if node.right:
					queue.append(node.right)
			res.append(tmp[-1])
		return res
                                                                          
0 次阅读

发表评论

电子邮件地址不会被公开。