4.2 二叉树的基本操作 ppt课件-2023新浙教版(2019)《高中信息技术》选修1.pptx
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《4.2 二叉树的基本操作 ppt课件-2023新浙教版(2019)《高中信息技术》选修1.pptx》由用户(Q123)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 高中信息技术 4.2 二叉树的基本操作 ppt课件_2023新浙教版2019高中信息技术选修1 二叉 基本 操作 ppt 课件 _2023 新浙教版 2019 高中 信息技术 选修 下载 _必修2 信息系统与社会_教科版(2019)_信息_高中
- 资源描述:
-
1、4.2 二叉树的基本操作无论是线性结构还是非线性结构数据,都需要对数据元素逐个进行组织存储和处理。二叉树的基本操作,主要包括二叉树的建立和遍历等。二叉树的建立1.建立二叉树的操作,可以按照层的顺序进行,先由第1层开始,依次到下一层,在每一层中按照从左到右的顺序创建节点。二叉树的建立可以用数组或者链表数据结构来实现。1.数组实现用数组来表示二叉树时,分为以下两种情况。(1)完全二叉树从二叉树的根节点开始,按从上而下、自左向右的顺序对n个节点进行编号,根节点的编号为0,最后一个节点的编号为n-1。然后依次将二叉树的节点用一组连续的数组元素来表示,节点编号与数组的下标一一对应。如下图中图甲所示的完全
2、二叉树所对应的一维数组表示如图乙所示。ABCDE甲 完全二叉树A AB BC CD DE E01234567乙 数组表示示意图(2)非完全二叉树对于非完全二叉树,先将它补充为一棵完全二叉树,补上的节点及分支用虚线表示,如下图图甲所示的一棵非完全二叉树补全为图乙所示的完全二叉树。然后将补全后的完全二叉树,从它的根节点开始,按从上而下、自左往右的顺序对n个节点进行编号,根节点的编号为0,最后一个节点的编号为n-1。如图丙所示,依次把完全二叉树中原二叉树的节点用一维数组的各个元素来表示,节点编号与数组的下标一一对应。ABCABC甲 原二叉树乙 补全后的二叉树01234567丙 数组实现示意图ABC对
3、于完全二叉树而言,一维数组的表示方式既简单又节省存储空间。但对于一般的二叉树来说,采用一维数组表示时,结构虽然简单,却容易造成存储空间的浪费。如图甲所示,一个深度为k且只有k个节点的树需要如图乙所示2k-1个节点的存储空间才能表示出来。2.链表实现二叉树也可以采用链表来实现,用任意一组存储单元来存储二叉树的节点,用指向节点的指针来表示节点之间的关系。由于二叉树的节点可能有两个孩子,即左孩子和右孩子,因此二叉树的节点至少需要3个域:一个数据域和两个指针域。两个指针域分别指向节点的左孩子和右孩子,这两个指针分别称为左指针和右指针,这样得到的链表也称为二叉链表。如下图所示的是二叉树及其对应的二叉链表
4、实现示意图。ABDCEFGA头指针BCDEFG二叉树的list实现二叉树节点可以看成是一个三元组,元素是左、右子树和本节点数据。Python的list可以用于组合这样的三个元素。下面介绍用list构造二叉树的方法。(1)空树用None表示。(2)非空二叉树用包含三个元素的列表d,l,r表示,其中:d表示根节点的元素,l和r是两棵子树,采用与整个二叉树同样结构的list表示。这样就可以把二叉树映射到一种分层的list结构,每棵二叉树都有与之对应的(递归结构的)list。ABCDFGEHIA,B,None,None,C,D,F,None,None,G,None,None,E,H,None,None
展开阅读全文