脚本宝典收集整理的这篇文章主要介绍了

leetcode-145-Binary Tree Postorder Traversal

脚本宝典小编觉得挺不错的,现在分享给大家,也给大家做个参考,希望能帮助你少写一行代码,多一份安全和惬意。

stack 栈的意义价值: 具有时间性,先进后出。 所以具有时间关联顺序的元素可以通过这个时间。 比如递归的后序遍历,先序遍历,

        二叉树的按层次打印。  根据需求不同,在stack中暂时储存的元素单元也不同,元素的先后顺序也不同。

应用:对顺序有要求的数据。二叉树的处理。

Given a binary tree, return the postorder traversal of its nodes' values.
Example:

Input: [1,null,2,3]
1


 2
/

3

Output: [3,2,1]

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

class Solution:
    def postorderTraversal(self, root):
        """
        :type root: TreeNode
        :rtype: List[int]
        """
        if not root:
            return []
        stack=list()
        ans=list()
        stack.append(root)
        while stack:
            node_cur=stack.pop()
            if node_cur.val:
                ans.append(node_cur.val)
            if node_cur.left:
                stack.append(node_cur.left)
            if node_cur.right:
                stack.append(node_cur.right)
        return ans[::-1]

总结

以上是脚本宝典为你收集整理的

leetcode-145-Binary Tree Postorder Traversal

全部内容,希望文章能够帮你解决

leetcode-145-Binary Tree Postorder Traversal

所遇到的程序开发问题,欢迎加入QQ群277859234一起讨论学习。如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典网站推荐给程序员好友。 本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。

80%的人都看过