二叉树的遍历

深度优先搜索

前中后序遍历都是深度优先搜索

<aside> 💡

前 / 中 / 后序中的“序”指的是中间节点搜索的次序

一般采用递归来实现,或使用栈来模拟递归进行实现

</aside>

广度优先搜索

层序遍历

递归遍历

<aside> 💡

递归遍历的要点

  1. 确定递归函数的参数和返回值
  2. 确定终止条件
  3. 确定单层递归的逻辑 </aside>

<aside> 💡

递归的一些要点

  1. 对于需要在递归过程中保持唯一性的变量(如最后的结果),可以使用引用维护(效果与使用一个全局变量维护相同)
  2. 关于递归顺序:

迭代遍历

<aside> 💡

迭代的一些要点:

二叉搜索树

<aside> 💡

二叉搜索树的一个重要性质:以中序遍历二叉树,得到的遍历序列一定是单调递增的

</aside>

题目

94. 二叉树的中序遍历

144. 二叉树的前序遍历

145. 二叉树的后序遍历

102. 二叉树的层序遍历

226. 翻转二叉树

101. 对称二叉树