自定义数据类型.pptxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
自定义数据类型会计学第1页/共38页7.1 树1.树的定义树是由n(n≥0)个结点组成的有限集合T。n=0的树称为空树;对n0的树,有:(1)仅有一个特殊的结点称为根结点,根结点没有前驱结点;(2)当n1时,除根结点外其余的结点分为m(m0)个互不相交的有限集合T1,T2,…,Tm,其中每个集合Ti本身又是一棵结构和树类似的子树。注:树的定义具有递归性,即“树中还有树”。ABCLFFKGDEHJI第2页/共38页若干术语结点:由数据元素和构造数据元素之 间关系的指针组成结点的度:结点所拥有的子树的个数 叶结点:度为0的结点,也称作 终端结点 分支结点:度不为0的结点 孩子结点:树中一个结点的子树的根结点 双亲结点:若树中某结点有孩子结点,则这个结点就 称作它的孩子结点的双亲结点 兄弟结点:具有相同的双亲结点的结点 树的度:树中所有结点的度的最大值 结点的层次:从根结点到树中某结点所经路径上的分支数 第3页/共38页树的深度:树中所有结点的层次的最大值 无序树:树中任意一个结点的各孩子结点之间的次序 构成无关紧要的树 有序树:树中任意一个结点的各孩子结点有严格排列 次序的树森林:m(m≥0)棵树的集合 2.树的表示方法(1)直观表示法 (2)形式化表示法 (3)凹入表示法 第4页/共38页3.树的抽象数据类型数据集合: 树的结点集合,每个结点由数据元素和构造数      据元素之间关系的指针组成。操作集合: (1)创建树 MakeTree(T) (2)撤消树 DestroyTree(T) (3)查找树中当前结点的双亲结点 Parent(T,curr) (4)查找树中当前结点的左孩子结点 LeftChild(T,curr) (5)查找树中当前结点的右兄弟结点 RightSibling(T,curr) (6)遍历树  Traverse(T,Visit( ))第5页/共38页4.树的存储结构 树的结点之间的逻辑关系主要有双亲-孩子关系,兄弟关系。因此,从结点之间的逻辑关系分,树的存储结构主要有:双亲表示法、孩子表示法、双亲孩子表示法和孩子兄弟表示法四种组合。data parentA-1012345678B0C0AD1E1BF1G2H4GCHFIED4I第6页/共38页(1)双亲表示法(a)一棵树(b)仿真指针的双亲表示法存储结构树及其使用仿真指针的双亲表示法rootA∧BC∧∧GEFD∧∧∧∧∧∧∧∧∧∧HI∧∧∧∧∧∧常规指针的孩子表示法第7页/共38页(2)孩子表示法child nextdata parent headA-10123456781∧2B0∧543C06∧D1∧E178∧F1∧G2∧H4∧4I∧第8页/共38页(3)双亲孩子表示法双亲孩子表示法rootA∧CB∧∧D∧F∧∧∧EGHI∧∧∧第9页/共38页(4)孩子兄弟表示法常规指针的孩子兄弟表示法AACCBBDDEEFFGG第10页/共38页7.2 二叉树1.二叉树的定义一、二叉树:是n(n≥0)个结点的有限集合。n=0的树称为空二叉树;n0的二叉树由一个根结点以及两棵互不相交的、分别称为左子树和右子树的二叉树组成 。逻辑结构: 一对二(1:2) 基本特征:① 每个结点最多只有两棵子树(不存在度大于2的结点);② 左子树和右子树次序不能颠倒。所以下面是两棵不同的树AABCBCEFGDEFGDHIJKLMNOHIJ第11页/共38页二、满二叉树:在一棵二叉树中,如果所有分支结点都存在左 子树和右子树,并且所有叶子结点都在同一层上,这样的 二叉树称为满二叉树。三、完全二叉树:如果一棵深度为k,有n个结点的二叉树中各 结点能够与深度为k的顺序编号的满二叉树从1到n标号的 结点相对应的二叉树称为完全二叉树。如下图所示(b)完全二叉树 (a)满二叉树 第12页/共38页2.二叉树抽象数据类型数据集合:二叉树的结点集合,每个结点由数据元素和构造数据元素之间关系的指针组成。操作集合:(1)创建二叉树 MakeTree(T)(2)撤消二叉树 DestroyTree(T)(3)左插入结点 InsertLeftNode(curr,x)(4)右插入结点 InsertRightNode(curr,x)(5)左删除子树 DeleteLeftTree(curr)(6)右删除子树 DeleteRightTree(curr)(7)遍历二叉树 Traverse(T,Visit())第13页/共38页3.二叉树的性质性质1:在一棵非空二叉树的第i层上至多有2i个结点(i≥0)。性质2:深度为k的二叉树至多有2k+1-1个结点(k≥-1)。性质3: 具有n个结点的完全二叉树的深度k为不超过[log2(n+1)]-1的最大整数。证明:根据性质2,对于有n个接点的深度为k

文档评论(0)

kuailelaifenxian + 关注
官方认证
文档贡献者

该用户很懒,什么也没介绍

认证主体太仓市沙溪镇牛文库商务信息咨询服务部
IP属地上海
统一社会信用代码/组织机构代码
92320585MA1WRHUU8N

1亿VIP精品文档

相关文档