- 1、本文档共10页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
二叉树的
存储与基本操作
本讲要点二叉树的存储二叉树的基本操作问题如何表示(抽象)逻辑结构如何存储?物理结构如何操作?操作算法
1.二叉树的存储二叉树的顺序存储结构用一维数组存储二叉树中的结点,并且结点的存储位置(下标)应能体现结点之间的逻辑关系——父子关系。如何利用数组下标来反映结点之间的逻辑关系?二叉树的性质5为二叉树的顺序存储指明了存储规则:依照完全二叉树的结点编号次序,依次存放各个结点。完全二叉树和满二叉树中结点的序号可以唯一地反映出结点之间的逻辑关系。注意:C/C++中数组的起始地址为0,编号为i的结点存储在下标为i的单元内。
1.二叉树的存储二叉树的顺序存储结构对于一般二叉树而言,如何利用完全二叉树的编码规则来存储数据呢?ABCDEGFABC∧DE∧∧∧F∧∧G数组下标12345678910111213以编号为下标ABCDEGF123561013按照完全二叉树编号
1.二叉树的存储二叉树的顺序存储结构优点?对于满二叉树、完全二叉树来说,顺序存储结构的存储效率极高。所有的空间仅仅用来存储数据元素的值,结点之间关系的存储未占用任何空间。可以直接存取二叉树中的任意结点的数据信息,且双亲与孩子关系计算也非常简单。由于每个数据元素的存储位置暗藏彼此之间的关系,可以根据结点的编号,直接计算出它的父结点、左/右孩子结点的位置。
1.二叉树的存储二叉树的顺序存储结构缺点?一棵斜树的顺序存储会怎样呢?高度为k的右斜树,k个结点需分配2k-1个存储单元。一棵二叉树改造后成完全二叉树形态,需增加很多空结点,造成存储空间的浪费。二叉树的顺序存储结构一般仅存储完全二叉树ABC137D15
1.二叉树的存储二叉树的链式存储结构基本思想:令二叉树的每个结点对应一个链表结点,链表结点除了存放与二叉树结点有关的数据信息外,还要设置指示左右孩子的指针。
1.二叉树的存储二叉树的链式存储结构结点结构:lchilddatarchild其中,data:数据域,存放该结点的数据信息;lchild:左指针域,存放指向左孩子的指针;rchild:右指针域,存放指向右孩子的指针。
1.二叉树的存储二叉树的链式存储结构具有n个结点的二叉链表中,有多少个空指针?
2.二叉树的基本操作二叉树的遍历二叉树的建立二叉树的销毁
2.二叉树的基本操作(1)二叉树的遍历从根结点出发,按照某种次序访问二叉树中的所有结点,使得每个结点被访问一次且仅被访问一次。如果限定先左后右,则遍历方式有三种:先序:DLR中序:LDR后序:LRD层序遍历:按二叉树的层序编号的次序访问各结点。考虑二叉树的组成:根结点D左子树L右子树R二叉树什么次序?二叉树遍历操作的结果非线性结构线性化
2.二叉树的基本操作(1)二叉树的遍历从根结点出发,按照某种次序访问二叉树中的所有结点,使得每个结点被访问一次且仅被访问一次。抽象操作,可以是对结点进行的各种处理,这里简化为输出结点的数据。访问是什么意思?
2.二叉树的基本操作(1)二叉树的遍历先序遍历①若二叉树为空,则空操作返回。(否则)②访问根结点。③先序遍历根结点的左子树。④先序遍历根结点的右子树。先序遍历序列:ABDGCEFABCDEFG
2.二叉树的基本操作(1)二叉树的遍历中序遍历①若二叉树为空,则空操作返回。(否则)②中序遍历根结点的左子树。③访问根结点。④中序遍历根结点的右子树。ABCDEFG中序遍历序列:DGBAECF
2.二叉树的基本操作(1)二叉树的遍历后序遍历①若二叉树为空,则空操作返回。(否则)②后序遍历根结点的左子树。③后序遍历根结点的右子树。④访问根结点。ABCDEFG后序遍历序列:GDBEFCA
练一练--/+*abcdef二叉树遍历操作练习先序遍历结果:中序遍历结果:后序遍历结果:-+a*b-cd/efa+b*c-d-e/fabcd-*+ef/-
2.二叉树的基本操作(1)二叉树的遍历层次遍历从二叉树的第一层(即根结点)开始,从上至下逐层遍历,在同一层中,则按从左到右的顺序对结点逐个访问。ABCDEFG层次遍历序列:ABCDEFG
2.二叉树的基本操作(2)二叉树的建立能不能根据输入的线性序列唯一确定一棵二叉树?例如,输入先序序列abc解决?在输出遍历序列时,忽略了空结点,从而导致无法确定在遍历序列中的后继结点是左孩子还是右孩子。如果将“若二叉树为空,则遍历结束
您可能关注的文档
- 数据结构案例教程课件:排序.pptx
- 数据结构案例教程课件:图.pptx
- 数据结构案例教程课件:线性表.pptx
- 数据结构案例教程绪论.pptx
- 数据结构课件:AOE网与关键路径.pptx
- 数据结构课件:AOV网与拓扑排序.pptx
- 数据结构课件:Huffman树与Huffman编码.pptx
- 数据结构课件:插入类排序.pptx
- 数据结构课件:二叉树的基本性质.pptx
- 数据结构课件:广义表的概念及存储结构.pptx
- DB29-144-2010天津市地下铁道盾构法隧道工程施工技术规程.docx
- 浙江省杭州地区(含周边)重点中学2024-2025学年高一上学期11月期中考试英语试题2.docx
- 2021-2022学年江西省抚州市崇仁县五年级下册期末检测英语试卷.docx
- 吉林省辽源市田家炳高级中学高三(六十五届)友好学校下学期期末联考文科综合地理试题扫描版含答案.doc
- 云南省新平一中高三教学质量检测(七)生物.doc
- 河南省名校大联考2024-2025学年高一上学期12月月考历史试题2.docx
- 99R101 燃煤锅炉房工程设计施工图集55.docx
- D503-D505防雷与接地(下册)彩色版.docx
- 70-通风管道沿程阻力计算选用表 08K-508.docx
- 18GL204 预制混凝土综合管廊_3395.docx
最近下载
- 本科课件-普通植物病理学(完整).ppt
- 义务教育版(2024)五年级信息科技 第18课 冒泡排序齐体验(1) 课件.pptx VIP
- 昆明盘龙区园丁小区老旧小区提升改造工程施工组织设计.docx VIP
- SUPRATONTM改性沥青胶体磨60Th技术规格.PDF
- 义务教育版(2024)五年级信息科技 第17课 选择排序轻松做 课件.pptx VIP
- 七年级英语阅读理解20篇及.docx
- 2篇 2024年民主生活会个人对照检查发言材料(四个带头).doc VIP
- 统编版六年级道德与法治下册全册教学课件(2024年春季版).pptx
- 生理学神经系统功能.ppt VIP
- 义务教育版(2024)五年级信息科技 第17课 选择排序轻松做 教案.docx VIP
文档评论(0)