数据结构 之 二叉树遍历 ------中序(根)遍历 和 后序(根)遍历(六)

提示:本篇章主要讲解数据结构中树的相关知识。

文章目录

    • 中序(根)遍历二叉树(LTR)
    • 后序(根)遍历二叉树(LRT)
    • 中根遍历二叉树的递归算法 (重要)
    • 后序遍历二叉树的递归算法 (重要)
    • 二叉树的遍历练习
    • 选择题


中序(根)遍历二叉树(LTR)

遍历口诀:(左根右)
中根遍历二叉树的递归定义为:若二叉树非空,则:
(1) 按中根次序遍历左子树;
(2) 访问根结点;
(3) 按中根次序遍历右子树;否则,遍历结束。

后序(根)遍历二叉树(LRT)

遍历口诀:(左右根)
后根遍历的递归定义为:若二叉树非空,则:
(1) 按后根次序遍历左子树;
(2) 按后根次序遍历右子树;
(3)访问根结点;

否则,遍历结束

如图所示:
在这里插入图片描述
中序遍历的顺序为:DBEGACF
后序遍历的顺序为:DGEBFCA
在这里插入图片描述
中序遍历为:dgbaechif
中序遍历为:gdbeihfca

中根遍历二叉树的递归算法 (重要)

将访问根结点的操作简化为输出根结点的值

void Inorder( BTNode * bt ){      /* 中序遍历算法以bt为根的二叉树 */      if (bt)     {          Inorder(bt->lchild) ;  /*中根遍历左子树*/            printf(bt->data) ;      /* 访问根结点 */Inorder(bt->rchild) ; /* 中根遍历右子树*/    }}

后序遍历二叉树的递归算法 (重要)

void Postorder(BTNode *bt {/*后序遍历二叉树bt的递归算法 */  
if (bt)   {      Postorder(bt->lchild);Postorder(bt->rchild);printf(bt->data);}}

二叉树的遍历练习

接下来看下图所示的完全二叉树,三种遍历二叉树的顺序如下,你会了吗?
在这里插入图片描述

选择题

1.在完全二叉树中,若一个结点没有(A ),则它必定是叶子结点。
A 左子结点 B右子结点   C兄弟    D左子结点或右子结点

2.在一个非空二叉树的中根遍历序列中,根结点的右边(D )
A 只有左子树上的所有结点   B  只有左子树上的部分结点
C 只有右子树上的部分结点   D  只有右子树上的所有结点

3.任何一棵二叉树的叶子结点在先根、中根和后根遍历序列中的相对次序(B)
A 发生变化  B不发生变化  C不能确定   D以上都不对

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/460064.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据结构 ——— 二叉树的概念及结构

目录 二叉树的概念 特殊的二叉树 一、满二叉树 二、完全二叉树 二叉树的概念 二叉树树示意图: 从以上二叉树示意图可以看出: 二叉树每个节点的度不大于 2 ,那么整个二叉树的度也不大于 2 ,但是也不是每个节点都必须有 2 个…

IDEA解决 properties 文件乱码问题

博主介绍: 计算机科班人,全栈工程师,掌握C、C#、Java、Python、Android等主流编程语言,同时也熟练掌握mysql、oracle、sqlserver等主流数据库,具有丰富的项目经验和开发技能。提供相关的学习资料、程序开发、技术解答、…

MySQL 9从入门到性能优化-创建触发器

【图书推荐】《MySQL 9从入门到性能优化(视频教学版)》-CSDN博客 《MySQL 9从入门到性能优化(视频教学版)(数据库技术丛书)》(王英英)【摘要 书评 试读】- 京东图书 (jd.com) MySQL9数据库技术_夏天又到了…

电子邮件营销平台教程:从零开始营销指南!

电子邮件营销平台功能详解?哪个电子邮件营销平台好? 无论是初创企业还是成熟品牌,掌握电子邮件营销平台的技巧,都能有效提升品牌影响力和销售业绩。MailBing将为你提供一份详尽的电子邮件营销平台教程,帮助你从零开始…

软件行业似乎要消失了

关注卢松松,会经常给你分享一些我的经验和观点。 软件行业是企业倒闭和裁员降薪的重灾区,其实比网站、站长、电商群体更惨。 据赛迪发布,354家软件上市公司财报数据显示:上半年合计利润6.9亿,同比下跌91.62%&#x…

windows 10 clion配置32位c++环境

主要就是这一个地方,需要32位的mingw32,mingw32可以在红框的蓝色download下载

计算机视觉-对极几何

1 基本概念 对极几何(Epipolar Geometry)描述的是两幅视图之间的内在射影关系,与外部场景无关,只依赖于摄像机内参数和这两幅视图之间的相对位姿 两视图的对极几何可以理解为图像平面与以基线为轴的平面束相交的几何关系&#xf…

leetcode344. Reverse String

Write a function that reverses a string. The input string is given as an array of characters s. You must do this by modifying the input array in-place with O(1) extra memory. Example 1: Input: s [“h”,“e”,“l”,“l”,“o”] Output: [“o”,“l”,“l”…

ssm016基于 Java Web 的校园驿站管理系统(论文+源码)_kaic

毕 业 设 计(论 文) 题目:校园驿站管理系统的设计与实现 摘 要 互联网发展至今,无论是其理论还是技术都已经成熟,而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播,搭配信息管理工具可以很好…

鸿蒙自定义加载 LoadingDialog

代码如下: Component export struct LoadingDialog {Prop title: stringbuild() {Stack() {Column() {LoadingProgress().color(Color.White).width(100).height(100)Text(this.title).fontSize(18).fontColor(0xffffff).margin({ top: 8 }).visibility(this.title …

【AI开源项目】Dify- 轻松打造可持续运营的 GPT 系列的 AI应用 —— 全面解析LLMOps平台

文章目录 什么是Dify?Dify的名称由来 了解LLMOpsDify的核心功能兼容多种LLMs Dify的优势完全开源核心能力 如何安装Dify快速启动使用Helm Chart在Kubernetes上部署自定义配置 使用Dify创建AI应用第一步:创建应用程序第二步:编写和调试提示词第…

【HTML】——VS Code 基本使用入门和常见操作,新手小白也能看懂

阿华代码,不是逆风,就是我疯 你们的点赞收藏是我前进最大的动力!! 希望本文内容能够帮助到你!! 目录 零:HTML开发工具VSCode的使用 1:创建项目 2:创建格式模板&#x…

基于springboot+vue实现的公考知识学习平台 (源码+L文+ppt)4-103

4.1 系统功能结构设计 根据对公考知识学习平台的具体需求分析,把系统可以划分为几个不同的功能模块:管理员可以对系统首页、个人中心、用户管理、讲师管理、在线咨询管理、学习资料管理、讲座信息管理、讲座预约管理、学习论坛、练习自测管理、试题管理…

计算结构力学:多自由度振动系统

本文以笔记的形式记录计算结构力学的若干基础知识。 注1:限于研究水平,分析难免不当,欢迎批评指正。 注2:文章内容会不定期更新。 预修1:线性代数 1. 标准特征值 复矩阵Schur分解:对于复矩阵&#xff0c…

将多个commit合并成一个commit并提交

0 Preface/foreword 1 压缩多个commit方法 1.1 git merge --squash 主分支:main 开发分支:test 当前在test分支提交了8个commits,功能已经开发完成,需要将test分支合并到main分支,但是不想在合并时候,看…

JVM 实战篇(一万字)

此笔记来至于 黑马程序员 内存调优 内存溢出和内存泄漏 内存泄漏(memory leak):在Java中如果不再使用一个对象,但是该对象依然在 GC ROOT 的引用链上,这个对象就不会被垃圾回收器回收,这种情况就称之为内…

使用Fiddler Classic抓包工具批量下载音频资料

1. 通过F12开发者工具,下载音频文件 浏览器打开音频列表->F12快捷键->网络->媒体,播放一个音频文件,右边媒体下生成一个音频文件,右击“在新标签页中打开”,可以下载这个音频文件。 2.通过Fiddler Classic抓…

新能源行业必会基础知识---电力现货问答---第9问---什么是输电权?什么是输电权市场?

新能源行业必会基础知识-----电力现货问答-----主目录-----持续更新https://blog.csdn.net/grd_java/article/details/142909208 虽然这本书已经出来有几年了,现货市场已经产生了一定变化,但是原理还是相通的。还是推荐大家买来这本书进行阅读观看&#…

音视频入门基础:AAC专题(11)——AudioSpecificConfig简介

音视频入门基础:AAC专题系列文章: 音视频入门基础:AAC专题(1)——AAC官方文档下载 音视频入门基础:AAC专题(2)——使用FFmpeg命令生成AAC裸流文件 音视频入门基础:AAC…

java-web-day5

1.spring-boot-web入门 目标: 开始最基本的web应用的构建 使用浏览器访问后端, 后端给浏览器返回HelloController 流程: 1.创建springboot工程, 填写模块信息, 并勾选web开发的相关依赖 注意: 在新版idea中模块创建时java下拉框只能选17, 21, 23 这里选17, maven版本是3.6.3, 很…