【二叉树的非递归遍历】用堆栈实现中序遍历

规则 从根结点出发沿着左子树往下走,遇到一个结点就放入堆栈中,走到最底 走到底后,若当前结点有右子树,则将该结点从堆栈中取出后输出,再沿着右孩子的左子树往下走同1 若当前结点无右子树,则开始向上回溯,将该结点pop并输出 其实上面都可以不看qwq,其实归根到底一句话就是: 路径沿着二叉树外部转一圈,结点放入堆栈中,第二次碰到的时候就输出(叶节点转了个弯就算两次) 详见下例 举例
相关文章
相关标签/搜索