单调栈解法:
后序遍历:左 右 根
反转后:根 右 左
首先给一个极大值,令其为根节点,那么所给的二叉树为其左节点。
维护递增单调栈,递增过程就是 根→右 过程,否则一定是到右→左了,退栈过程得出他的根,这时再往后的节点一定是根的左节点,否则不是后序遍历。
现在又到了一个左节点,那么我们重复上述过程,实际上也就是一个递归过程。
剑指offer33 判断二叉搜索树的后序遍历
于 2022-04-17 01:02:35 首次发布
本文介绍了如何使用单调栈解决二叉树的后序遍历问题。通过设置极大值作为初始根节点,然后维护一个递增栈,以实现从根到右的过程。当遇到不符合递增条件的节点时,退栈并找到其根节点,接着的节点被视为根节点的左子节点。此方法本质上是一个递归过程,适用于理解二叉树遍历和单调栈的应用。
522

被折叠的 条评论
为什么被折叠?



