美文网首页
二叉树非递归后续遍历

二叉树非递归后续遍历

作者: 而立之年的技术控 | 来源:发表于2019-12-24 11:32 被阅读0次

一直觉得二叉树的后续遍历非常绕,所以这里就结合自己的感受来阐述一下我的理解

微信图片_20191224113052.jpg
def lastOrder(root):
    if not root:
        return None
    tmp = root
    stack = []
    while tmp or stack:
        while tmp:
            stack.append(tmp)
            tmp = tmp.left
        node = stack[-1]
        tmp = node.right
        if tmp is None:
            node = stack.pop()
            print(node.val)
            while stack and node == stack[-1].right:
                node = stack.pop()
                print(node.val)

相关文章

  • 二叉树遍历java,非递归、层次。

    /** * 前序遍历 * 递归 */ /*** 前序遍历* 非递归*/ 后续遍历非递归 二叉树层次遍历基于java...

  • 二叉树遍历

    请递归,非递归方式分别前序遍历,中序遍历,后续遍历二叉树

  • 二叉树的三种遍历(前序/中序/后序)

    参考博客 二叉树的非递归后续遍历

  • 二叉树的相关操作(一)

    上次写了二叉树遍历,其中在非递归的遍历中,只写了前序遍历,没有写非递归中序遍历和后续遍历。非递归要用到栈,只要根据...

  • 大数据面试题目

    一、数据结构与算法 1.二叉树前序、中序、后续遍历方式(递归以及非递归) 2.二叉树的深度以及广度遍历方式 ...

  • 二叉树递归非递归遍历算法整理

    一、二叉树前序遍历 1 前序递归遍历 2.前序非递归遍历 一、二叉树中序遍历 2.中序递归遍历 1.中序非递归遍历...

  • 二叉树的遍历(递归和非递归)

    1. 二叉树的遍历 前序遍历:根、左、右中序遍历:左、根、右后续遍历:左、右、根 2.递归以及非递归的实现 因为二...

  • 总结

    1、二叉树广度遍历(非递归) 广度遍历非递归实现需要依靠一个队列。 2、二叉树深度遍历(递归与非递归,前序,中序和...

  • 二叉树遍历

    二叉树的遍历 1. 前序遍历 1.1 递归前序遍历 1.2 非递归前序遍历 2 中序遍历 2.1递归遍历 2.2非...

  • 面试,你需要知道这些东西

    一、数据结构与算法 1.二叉树前序、中序、后续遍历方式(递归以及非递归) 2.二叉树的深度以及广度遍历方式 3.二...

网友评论

      本文标题:二叉树非递归后续遍历

      本文链接:https://www.haomeiwen.com/subject/cqwxoctx.html