题解 | #从上往下打印二叉树#

从上往下打印二叉树

http://www.nowcoder.com/practice/7fe2212963db4790b57431d9ed259701

就很简单的想到打印二叉树,然后然后需要两个list, res和queue,一个用来迭代,一个用来保存结果,注意,queue保存的是节点

# -*- coding:utf-8 -*-
# class TreeNode:
#     def __init__(self, x):
#         self.val = x
#         self.left = None
#         self.right = None
class Solution:
    # 返回从上到下每个节点值列表,例:[1,2,3]
    def PrintFromTopToBottom(self, root):
        # write code here
        if root == None:
            return []
        queue, res = [root], []
        while queue:
            node = queue.pop(0)
            res.append(node.val) #每次只装一层的值而不装下一层的值,否则午发实现
            if node.left:
                queue.append(node.left)#每次把下一层的放到queue里便于循环遍历
            if node.right:
                queue.append(node.right)
        return res

全部评论

相关推荐

码农索隆:1.照片换成证件照。 2.专业技能写的太少了,太单薄了。 3.项目经历描写的太冗余,分成几点。 4.无实习经历,看看能不能包一个。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务