第7章 树和二叉树1.pptVIP

  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文档。上传文档
查看更多
第7章 树和二叉树(Tree Binary Tree) 7.1 树 7.1.1 树的定义 7.1.2 若干术语 7.1.3 树的抽象数据类型 7.1.4 树的存储结构 树的结点之间的逻辑关系主要有双亲-孩子关系,兄弟关系。因此,从结点之间的逻辑关系分,树的存储结构主要有:双亲表示法、孩子表示法、双亲孩子表示法和孩子兄弟表示法四种组合。 补充:树的5种表示法: 图形表示法 7.2 二叉树 为何要重点研究每结点最多只有两个 “叉” 的树? 二叉树的结构最简单,规律性最强; 可以证明,所有树都能转为唯一对应的二叉树,不失一般性。 7.2.1 二叉树的定义 二、满二叉树   在一棵二叉树中,如果所有分支结点都 存在左子树和右子树,并且所有叶子结点都 在同一层上,这样的二叉树称为满二叉树。 (一棵深度为k((k≥-1)且有2k+1-1个结点的 二叉树称为满二叉树。) 三、完全二叉树 图7.4   如果一棵深度为k,有n个结点的二叉树 中各结点能够与深度为k的顺序编号的满二叉 树从1到n标号的结点相对应的二叉树称为完 全二叉树。 特点: (1)所有的叶结点都出现在第k层或k-1层。 图7.5 (2)若任一结点,如果其右子树的最大层次为i,则其左子树的 最大层次为i或i+1。 三、满二叉树与完全二叉树的区别    满二叉树是叶子一个也不少的树,而完全二叉树虽然前k-1层是满的,但最底层却允许在右边缺少连续若干个结点。满二叉树是完全二叉树的一个特例。 四、为何要研究这两种特殊形式?    因为它们在顺序存储方式下可以复原。 7.2.2 二叉树的抽象数据类型 7.2.3 二叉树的性质 小结 7.1 树的基本概念 7.2 二叉树 二叉树的概念 两种特殊的二叉树 二叉树的性质 * * 7.1 树 7.2 二叉树 7.3 二叉树的设计与实现 7.4 遍历二叉树和线索二叉树 7.5 赫夫曼树及其应用 7.6 树与二叉树的转换 特点:非线性结构,一个直接前驱,但可能有多个直接后继。 (一对多或1:n) 注1:树的定义具有递归性,即“树中还有树”。 树是由n(n≥0)个结点组成的有限集合T。n=0的树称为空树;对n0的树,有:(1)仅有一个特殊的结点称为根结点,根结点没有前驱结点;(2)当n1时,除根结点外其余的结点分为m(m0)个互不相交的有限集合T1,T2,…,Tm,其中每个集合Ti本身又是一棵结构和树类似的子树。 ——即上层的那个结点(直接前驱) ——即下层结点的子树的根(直接后继) ——同一双亲下的同层结点(孩子之间互称兄弟) ——即从根到该结点所经分支的所有结点 ——即该结点下层子树中的任一结点 A B C G E I D H F J F L K 根 叶子结点 森林 有序树 无序树 ——即根结点(没有前驱) ——即终端结点(没有后继) ——指m棵不相交的树的集合(例如删除A后的子树个数) 双亲结点 孩子结点 兄弟结点 祖先结点 子孙结点 ——结点各子树从左至右有序,不能互换(左为第一) ——结点各子树可互换位置。 图7.1 ——即树的数据元素 ——结点挂接的子树数 结点 结点的度 结点的层次 终端结点 分支结点 树的度 树的深度 (或高度) A B C G E I D H F J F L K ——从根到该结点的层数(根结点算第一层) ——即度为0的结点,即叶子 ——即度不为0的结点(也称为内部结点) ——所有结点度中的最大值(Max{各结点的度}) ——指所有结点中最大的层数(Max{各结点的层次}) 问:右上图中的结点数= ;树的度= ;树的深度= 13 3 4 (有几个直接后继就是几度,亦称“次数”) 数据集合: 树的结点集合,每个结点由数据元素和构造数     据元素之间关系的指针组成。 操作集合: (1)创建树 MakeTree(T)   (2)撤消树 DestroyTree(T) (3)查找树中当前结点的双亲结点 Parent(T,curr) (4)查找树中当前结点的左孩子结点 LeftChild(T,curr) (5)查找树中当前结点的右孩子结点 RightSibling(T,curr) (6)遍历树  Traverse(T,Visit( )) 3 H 2 G 1 F 1 E 1 D 0 C 0 B -1 A

文档评论(0)

qbjzmxj5904 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档