mobile wallpaper 1mobile wallpaper 2mobile wallpaper 3mobile wallpaper 4mobile wallpaper 5mobile wallpaper 6
489 字
1 分钟
二叉树遍历简单介绍

二叉树的遍历#

根据节点的访问顺序,分为广度优先和深度优先。他们是一种通用的遍历,后面的图也会用到。

我们先来看广度优先。

一、广度优先#

是层序遍历,正好利用树的深度的概念。

a

广度优先是层序遍历,我们会首先访问节点的孙子再访问孩子,一层一层往下访问。

上面的二叉树用广度优先遍历的结果就是:F,D,J,B,E,G,K,A,C,I,H

二、深度优先#

深度优先则不同,它不是一种遍历,而是 3 种遍历方式的统称——前序、中序、后序。

我们会先来到一个孩子,然后完成它所有的孩子节点。换句话说就是会访问路径上所有F(上图根节点)的孙子节点。

  • <root><left><right>——preorder前序,采用(DLR——data,left,right)的模式
  • <left><root><right>——inorder中序,采用(LDR)
  • <left><right><root>——postorder后序,(LRD)

可以看到,节点所处的位置决定是哪种遍历方式。

我们来模拟一下前序遍历

前序遍历#

DLR:即data,left,right

碰到data就输出当前节点的值,碰到left就访问左子树,碰到right就右子树

根据DLR顺序,先根,再搞完左子树,最后搞右子树

b

这边展示了左子树的遍历,右子树也是一样的。

中序遍历#

LDR,我们来模拟一下。

c

先走左子树,接着L碰到NULL后开始D(输出节点),然后走右边(R),R碰到NULL后完成当前节点遍历,开始往回走。

d

e

ok,左边就这么水灵灵完成了。右边也是一个道理。

后序遍历和上面两个差不多,再此不做演示了!纯纯偷懒😋

分享

如果这篇文章对你有帮助,欢迎分享给更多人!

二叉树遍历简单介绍
https://fatdog.20060113.xyz/posts/binary-tree-traverse/
作者
神秘大胖狗
发布于
2026-04-14
许可协议
CC BY-NC-SA 4.0

部分信息可能已经过时

封面
Sample Song
Sample Artist
封面
Sample Song
Sample Artist
0:00 / 0:00