news 2026/7/27 0:05:15

第7章树和二叉树:树和森林的遍历

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
第7章树和二叉树:树和森林的遍历

7.10 树和森林的遍历

1. 树的遍历

由树结构的定义,可以引出两种次序遍历树的方法:

(1)先根(次序)遍历

先访问树的根结点,然后依次先根遍历根的每棵子树。

以图 7.10.1 所示的树为例,先根遍历,可得树的先根序列为:RADEBCFGHK

图 7.10.1 树

(2)后根(次序)遍历

先依次后根遍历每棵子树,然后访问根结点。

以图 7.10.1 所示的树为例,后根遍历,可得树的后根序列为:DEABGHKFCR

2. 森林的遍历

按照森林和树相互递归的定义,森林也有两种遍历方法

(1)先序遍历

若森林非空,按照下述规则遍历:

① 访问森林中第一棵树的根结点;

② 先序遍历第一棵树的根结点的子树森林;

③ 先序遍历除去第一棵树之后剩余的树构成的森林

如图 7.10.2 所示的森林,根据先序遍历,得到森林的先序序列为:ABCDEFGHIJ

图 7.10.2 森林

(2)中序遍历

若森林为空,则可按下述规则遍历:

① 中序遍历森林中第一棵树的根结点的子树森林;

② 访问第一棵树的根结点;

③ 中序遍历除去第一棵树之后剩余的树构成的森林。

如图 7.10.2 所示的森林,根据中序遍历,得到森林的中序序列为:BCDAFEHJIG

由森林与二叉树之间转换的规则可知,当森林转换成二叉树时,其第一棵树的子树森林转换成左子树,剩余树的森林转换成右子树,则上述森林的先序和中序遍历即为其对应的二叉树的先序和中序遍历。

将图 7.10.2 所示的森林转换为二叉树,如图 7.10.3 所示,对该二叉树分别进行先序和中序遍历,可得和上述相同的序列。

图 7.10.3 由森林转换的二叉树

当以二叉链表做树的存储结构时,树的先根遍历和后根遍历可借用二叉树的先序遍历和中序遍历的算法实现。

树、森林的遍历与二叉树的遍历的对应关系:

森林二叉树
先根遍历先序遍历先序遍历
后根遍历中序遍历中序遍历
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/22 20:33:40

基于STM32的水质PH值电导率TDS超声波水位液位检测系统设计

一、设计背景与核心需求 在水资源监测、水产养殖、污水处理等场景中,水质PH值、电导率、TDS(总溶解固体)与水位液位是评估水质状态与水体安全的关键参数。传统检测方式需多设备分别测量,存在操作繁琐、数据不同步的问题。基于STM3…

作者头像 李华
网站建设 2026/7/26 7:02:04

基于STM32的智能家居控制系统设计与应用

一、系统设计背景与核心目标 在物联网技术普及的当下,传统家居控制多依赖单一设备手动操作,存在功能割裂、能源浪费、便捷性不足等问题,难以满足用户对“全屋智能联动”的需求。STM32单片机凭借Cortex-M系列内核的高性能运算能力、丰富的外设…

作者头像 李华
网站建设 2026/7/26 4:32:13

旗舰标杆与性价比之选:园世Betapro与X7运动耳机全场景实测

在现代快节奏生活中,许多人都有运动的习惯,而一副合适的运动耳机不仅用来听歌,更是帮助您坚持锻炼、提升状态的重要工具。它能通过节奏感强的音乐,帮您稳住跑步的步频、延长运动时间,让重复的训练变得更有动力。园世Yu…

作者头像 李华
网站建设 2026/7/26 0:40:06

【本地生活服务智能化升级】:基于Open-AutoGLM的5大核心应用场景

第一章:Open-AutoGLM驱动本地生活服务预约的变革 Open-AutoGLM作为新一代开源自动语言生成模型,正深刻重塑本地生活服务的数字化体验。其核心优势在于能够理解复杂语义指令,并自动生成结构化响应,特别适用于预约类高频交互场景。通…

作者头像 李华