1 / 47
文档名称:

数据结构与算法分析5.ppt

格式:ppt   大小:209KB   页数:47
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

数据结构与算法分析5.ppt

上传人:kt544455 2019/12/15 文件大小:209 KB

下载得到文件列表

数据结构与算法分析5.ppt

相关文档

文档介绍

文档介绍:,表示为TREE=(D,R);其中:D是具有相同特性的数据元素的集合;R是元素集合D上的关系集合,如果D中只含有一个数据元素,则R为空集。或者用递归定义为:树是N(N>0)个结点的有限集合,其唯一关系具有下列属性:集合中存在唯一的一个结点,称为树根,该结点没有前驱;除根结点外,其余结点分为M(M≥0)个互不相交的集合,其中每一个集合都是一棵树,并称其为根的子树。(degree)一棵树中结点度的最大值称为该树的度度为零的结点称为叶子(leaf)或者终端结点度不为零的结点称为分支结点或者非终端结点除根结点之外的分支结点统称为内部结点树中结点的后继结点称为儿子(child)或者儿子结点,简称儿子结点的前驱结点称为儿子的双亲(parents)或者父亲结点,简称父亲同一个父亲的儿子互称为兄弟(sibling)…kj,使得ki是ki+1的父亲(1≤i<j),则称该结点序列是从k1到kj的一条路径(path)或者道路路径的长度等于j-1,它是该路径所经过的边(即连接两个结点的线段)的数目若树中结点k到ks存在一条路径,则称k是ks的祖先(Ancestor),ks是k的子孙(Descendant)结点的层数(level)是从根开始算起的。设根结点的层数为1,其余结点的层数等于其父亲结点的层数加1树中结点的最大层数称为树的高度(Height)或者深度(Depth)(即不能互换),则称该树为有序树(OrderedTree);否则称为无序树(UnorderedTree)森林(Forest)是m(m≥0)棵互不相交树的集合树形结构是非线性结构祖先与子孙的关系则是对父子关系的延伸,其定义了树中结点的纵向次序如果规定k1和k2是兄弟,且k1在k2的左边,则k1的任一子孙都在k2的任一子孙的左边,(n≥0)结点的有限集合,此集合或者为空,或者由一个根结点加上两棵分别称为左、右子树的,互不相交的二叉树组成二叉树可以为空集,因此根可以有空的左子树或者右子树,亦或者左、右子树皆为空从二叉树定义中可以看出,二叉树结构与一般树结构区别如下:(1)二叉树可以为空树,即不包含任何结点;一般树至少应有一个结点。(2)二叉树区别于度数为2的有序树,在二叉树中允许某些结点只有右子树而没有左子树;而有序树中,一个结点如果没有第一子树就不可能有第二子树的存在。(i≥1)层上的结点数最多为2i-1性质2高度为k的二叉树最多有2k-1个结点性质3对任何二叉树T,设n0、n1、n2分别表示度数为0、1、2的结点个数,则n0=n2+(包括满二叉树)的高度为(或者),称之为BinNode。BinNode类中存储了指向Object类的引用。创建二叉树时,可以根据需要而采用实际的数据类型。成员函数包括返回元素的值,返回左、右结点指针,设置元素的值,以了标志该结点是否为叶结点。interfaceBinNode{//二叉树结点的抽象数据类型//返回并设