题解 | #按之字形顺序打印二叉树#

按之字形顺序打印二叉树

http://www.nowcoder.com/practice/91b69814117f4e8097390d107d2efbe0

# -*- coding:utf-8 -*-
# class TreeNode:
#     def __init__(self, x):
#         self.val = x
#         self.left = None
#         self.right = None
class Solution:
    def Print(self, pRoot):
        # write code here
        if not pRoot: return
        queue=[pRoot]
        node=pRoot
        count=1
        level=[[pRoot.val]]
        while queue:
            nodes=[]
            while queue:
                node=queue.pop()
                #print(out)
                if count%2==0:
                    if node.left: nodes.append(node.left)
                    if node.right: nodes.append(node.right)
                else:
                    if node.right: nodes.append(node.right)
                    if node.left: nodes.append(node.left)
            count+=1
            queue=nodes
            level.append([i.val for i in nodes])
            
        level.pop()
        return level
全部评论

相关推荐

06-07 00:00
已编辑
腾讯_后端开发
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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