Python中的递归Postorder遍历列表?

Aar*_*sey 5 python tree list tree-traversal

大家好 - 我是一个编程新手,并在这里有以下非常简单的代码:

def postorder(T):
    if T != None:
        postorder(T.left)
        postorder(T.right)
        print T.data,
Run Code Online (Sandbox Code Playgroud)

所有我想要的不是打印遍历我想让函数将信息存储在数组或类似的东西中,以便我可以将该信息用于其他事物

Sim*_*ser 8

你可以做:

def postorder(tree):
    data = []

    def recurse(node)
        if not node:
            return
        recurse(node.left)
        recurse(node.right)
        data.append(node.data)

    recurse(tree)
    return data
Run Code Online (Sandbox Code Playgroud)

内部函数recurse负责遍历树,并自动添加数据data.