题解 | #求二叉树的层序遍历#

按之字形顺序打印二叉树

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

```# class TreeNode:
#     def __init__(self, x):
#         self.val = x
#         self.left = None
#         self.right = None
#
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
# 
# @param pRoot TreeNode类 
# @return int整型二维数组
#
class Solution:
    def Print(self , pRoot: TreeNode) -> List[List[int]]:
        res=[]
        def cengxu(root,deep):
            if not root:
                return None
            if (deep>=len(res)):
                res.append([])
            res[deep].append(root.val)
            if root.left is not None:
                cengxu(root.left,deep+1)
            if root.right is not None:
                cengxu(root.right,deep+1)
        cengxu(pRoot,0)
        for i in range (1,len(res),2):
            res[i].reverse()
        return res
##### 这道题的思路,其实可以很简单,上一道层序遍历的代码可以直接拿来用,将得到的res中的奇数项都reverse一下就可以了。
        
全部评论

相关推荐

5 1 评论
分享
牛客网
牛客企业服务