给定一个 N 叉树,返回其节点值的后序遍历。
例如,给定一个 3叉树
:
返回其后序遍历: [5,6,3,2,4,1]
.
思路:
跟上一题差不多,LeetCode-Python-589. N叉树的前序遍历,把顺序改成先扫子树再加root.val 就OK。
"""
# Definition for a Node.
class Node(object):
def __init__(self, val, children):
self.val = val
self.children = children
"""
class Solution(object):
def postorder(self, root):
"""
:type root: Node
:rtype: List[int]
"""
if not root:
return []
res = list()
for leaf in root.children:
res += self.postorder(leaf)
return res + [root.val]