news 2026/3/2 6:06:35

第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/2/26 0:23:43

Open-AutoGLM在外卖场景的落地实践(商家出餐提醒效率提升90%)

第一章:Open-AutoGLM 外卖商家出餐提醒在现代外卖平台运营中,及时的出餐提醒机制对提升配送效率和用户体验至关重要。Open-AutoGLM 是一个基于大语言模型自动决策的开源框架,能够根据订单状态、厨房负载和历史出餐时间智能判断最佳提醒时机&a…

作者头像 李华
网站建设 2026/2/25 22:10:37

为什么99%的外卖平台都在布局Open-AutoGLM轨迹跟踪技术?

第一章:Open-AutoGLM外卖配送轨迹跟踪技术的兴起背景随着城市化进程加速与即时消费习惯的普及,外卖行业对配送效率和透明度提出了更高要求。传统基于GPS点位上报的轨迹跟踪方式存在数据延迟、定位漂移等问题,难以满足高并发、高精度的实时追踪…

作者头像 李华
网站建设 2026/2/25 19:28:51

LangFlow镜像摘要生成器:一键压缩万字文章为百字精华

LangFlow镜像摘要生成器:一键压缩万字文章为百字精华 在智能应用开发日益加速的今天,一个常见的困境摆在团队面前:如何让非技术背景的产品经理、业务分析师甚至客户也能参与到AI系统的构建中?当一份长达数万字的行业报告需要快速提…

作者头像 李华
网站建设 2026/3/1 2:15:45

算子代数在机器学习中的应用与推广:深度学习笔记

摘要 随着深度学习模型日趋复杂及其对理论支撑的迫切需求,源于泛函分析的算子代数正逐渐成为理解与推进机器学习算法的重要工具。本笔记系统探讨算子代数在机器学习中的理论基础、核心应用、算法实现及未来方向。通过分析其在表示学习、优化理论与泛化分析等领域的具…

作者头像 李华
网站建设 2026/2/28 1:35:25

【AI+物流新范式】:Open-AutoGLM驱动下的外卖轨迹跟踪5步落地法

第一章:Open-AutoGLM驱动下的外卖轨迹跟踪新范式在智能物流与即时配送快速发展的背景下,外卖订单的实时轨迹跟踪已成为提升用户体验的核心环节。传统基于规则和固定模型的轨迹预测方法难以应对城市交通动态性与骑手行为多样性带来的挑战。Open-AutoGLM作…

作者头像 李华