4-2树的逻辑结构_第1页
4-2树的逻辑结构_第2页
4-2树的逻辑结构_第3页
4-2树的逻辑结构_第4页
4-2树的逻辑结构_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

4-2树的逻辑结构v第四章树和二叉树树的定义和基本术语树的抽象数据类型定义树的遍历操作学什么?4-2-1树的定义和基本术语v第四章树和二叉树树的定义树:n(n≥0)个结点的有限集合数据元素树的定义是采用递归方法,当n=0时,称为空树;任意一棵非空树T满足以下条件:(1)有且仅有一个特定的称为根的结点;(2)当n>1时,除根结点之外的其余结点被分成m(m>0)个互不相交的有限集合T1,T2,…,Tm,其中每个集合又是一棵树,并称为这个根结点的子树。ACBGFEDHIACBGFDACBGFDE互不相交的含义是什么?结点:结点不能属于多个子树边:子树之间不能有关系互不相交没有回路树的逻辑特征树结构具有层次性树的基本术语ACBGFEDHI树的度:树中各结点度的最大值结点的度:结点所拥有的子树的个数分支结点:度不为0的结点,也称为非终端结点叶子结点:度为0的结点,也称为终端结点ACBGFEDHI双亲:这个结点称为它孩子结点的双亲结点孩子:树中某结点子树的根结点称为这个结点的孩子结点兄弟:具有同一个双亲的孩子结点互称为兄弟a1ana2ai-1ai在线性结构中,逻辑关系表现为前驱——后继在树结构中,逻辑关系表现为双亲——孩子树的基本术语ACBGFEDHI路径:结点序列n1,n2,…,nk称为一条由n1至nk的路径,当且仅当满足如下关系:结点ni是ni+1的双亲(1<=i<k)路径长度:路径上经过的边的个数在树结构中,路径是唯一的祖先、子孙:如果有一条路径从结点x到结点y,则x称为y的祖先,而y称为x的子孙树的基本术语ACBGFEDHI结点所在层数:根结点的层数为1;对其余结点,若某结点在第k

层,则其孩子结点在第k+1层树的深度(高度):树中所有结点的最大层数树的宽度:树中每一层结点个数的最大值深度=4宽度=4树的基本术语线性结构和树结构的比较开始结点(只有一个):无前驱根结点(只有一个):无双亲终端结点(只有一个):无后继叶子结点(可以多个):无孩子其它元素:一个前驱,一个后继其它结点:一个双亲,多个孩子一对一

一对多ACBGFEDHIa1ana2ai-1ai线性结构树结构4-2-2树的抽象数据类型定义v第四章树和二叉树树的抽象数据类型定义树的应用很广泛,在不同的实际应用中,树的基本操作不尽相同ADTTreeDataModel

树由一个根结点和若干棵子树构成,树中结点具有层次关系OperationInitTree:初始化一棵树

DestroyTree:销毁一棵树PreOrder:前序遍历树PostOrder:后序遍历树LevelOrder:层序遍历树endADT简单起见,只讨论树的遍历树的遍历什么是遍历?线性结构如何遍历?简言之,遍历是对数据集合进行没有遗漏、没有重复的访问树的遍历:从根结点出发,按照某种次序访问树中所有结点,并且每个结点仅被访问一次抽象操作,可以是对结点进行的各种处理,这里简化为输出结点的数据先序(根)、后序(根)和层序(次)等a1ana2ai树的先序遍历操作定义:若树为空,则空操作返回;否则(1)访问根结点(2)从左到右先序遍历根结点的每一棵子树先序:ABDEHIFCG树的遍历树的后序遍历操作定义:若树为空,则空操作返回;否则(1)从左到右后序遍历根结点的每一棵子树(2)访问

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论