数据结构:3.3.3层序遍历

二叉树的核心问题:把二维的结构变为一维的线性序列

采用不同的方法就会产生不同的一维的序列

如果不访问父亲结点是访问不到左儿子和右儿子的,如果把父亲忘了左右儿子也是找不到的

二叉树转为一维序列过程中的一个问题:一个结点只关联两个结点,访问了其中的一个另一个怎么办,另一个要把它存起来

用堆栈来保存:自己或者右儿子(在堆栈里实现的是保存自己这个结点)。用堆栈保存的过程:自己访问完了访问左儿子,把自己保存起来,这样将来回来的时候可以去访问右儿子

用队列来保存:保存的是未来要访问的结点(也就是右儿子结点)。

算法实现:

相关推荐
gihigo19989 小时前
希尔伯特-黄变换(HHT)完整MATLAB实现
人工智能·算法·matlab
C++ 老炮儿的技术栈9 小时前
C/C++ 中 inline(内联函数)和宏定义(#define)的区别
开发语言·c++·git·算法·机器人·visual studio
大柏怎么被偷了9 小时前
【C++】哈希的应用
算法·哈希算法
血小板要健康9 小时前
如何计算时间复杂度(上)
java·数据结构·算法
古城小栈9 小时前
Rust Vec与HashMap全功能解析:定义、使用与进阶技巧
算法·rust
wWYy.9 小时前
详解哈希表
数据结构·算法·散列表
无望__wsk10 小时前
Python第一次作业
开发语言·python·算法
Lips61110 小时前
2026.1.25力扣刷题笔记
笔记·算法·leetcode
源代码•宸10 小时前
Leetcode—746. 使用最小花费爬楼梯【简单】
后端·算法·leetcode·职场和发展·golang·记忆化搜索·动规
南 阳10 小时前
Python从入门到精通day16
开发语言·python·算法