题解 | #实现二叉树先序,中序和后序遍历#

实现二叉树先序,中序和后序遍历

http://www.nowcoder.com/practice/a9fec6c46a684ad5a3abd4e365a9d362

# class TreeNode:
#     def __init__(self, x):
#         self.val = x
#         self.left = None
#         self.right = None

#
# 
# @param root TreeNode类 the root of binary tree
# @return int整型二维数组
#
class Solution:
    def threeOrders(self , root ):
        # write code here
        res, tmp = [], []
        def preOrder(root): # 前序
            if not root: return []
            tmp.append(root.val) # 根
            preOrder(root.left) # 左
            preOrder(root.right) # 右
        def inOrder(root): # 中序
            if not root: return []
            inOrder(root.left) # 左
            tmp.append(root.val) # 根
            inOrder(root.right) # 右
        def postOrder(root): # 后序
            if not root: return []
            postOrder(root.left) # 左
            postOrder(root.right) # 右
            tmp.append(root.val) # 根
        preOrder(root)
        res.append(tmp)
        tmp = []
        inOrder(root)
        res.append(tmp)
        tmp = []
        postOrder(root)
        res.append(tmp)
        return res
全部评论

相关推荐

牛客963010790号:为什么还要收藏
点赞 评论 收藏
分享
10-15 16:27
门头沟学院 C++
LeoMoon:建议问一下是不是你给他付钱😅😅
点赞 评论 收藏
分享
点赞 1 评论
分享
牛客网
牛客企业服务