2021-09-13
2021/9/14 6:08:09
本文主要是介绍2021-09-13,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
关于二叉树递归与非递归遍历的出入栈情况
重温数据结构,发现第一次学的时候并没有对二叉树非递归与递归遍历时的栈进行区分,这两种情况是不一样的
以上图的二叉树的前序遍历为例,如果是递归遍历,则栈的变化如下左
如果是非递归遍历(最普遍的前序遍历非递归算法),则栈的变化如上图右
还有一点要特别说明,递归进栈的是方法,而方法想要出栈必须全部执行完,因此递归遍历的栈中当某次调用方法传入的实参是非叶节点那么该次方法一定在它的子节点的那次方法后面出栈
而非递归进栈的是结点就没有那么多问题了
如果本文有什么问题欢迎在评论区指出,谢谢!
这篇关于2021-09-13的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-29DataGrip使用ssh连接数据库的操作流程
- 2024-05-28SpringBoot3.2更新声明!
- 2024-05-28中外程序员到底有啥区别?
- 2024-05-25外企也半夜发布上线吗?
- 2024-05-24鸿蒙原生应用再新丁!芒果TV 入局鸿蒙
- 2024-05-22基本概念
- 2024-05-22检索数据
- 2024-05-22排序数据
- 2024-05-22基础过滤数据
- 2024-05-22通过逻辑操作符过滤数据