网站大量收购独家精品文档,联系QQ:2885784924

数据结构课件 第五章 树.ppt

  1. 1、本文档共84页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构课件 第五章 树.ppt

第5章 树和二叉树 本章中主要介绍下列内容: 树的逻辑定义和存储结构 二叉树的逻辑定义、存储结构 二叉树的基本操作算法 树和二叉树的转换 哈夫曼树及其应用 5.1 树的概念与定义 5.2 二叉树 5.3 树与森林 5.4 哈夫曼树及其应用 5.5 应用举例 5.1 树 5.1 树 5.1.1 树的定义和基本运算 1. 定义 树是一种常用的非线性结构。我们可以这样定义:树是n(n≥0)个结点的有限集合。若n=0,则称为空树;否则,有且仅有一个特定的结点被称为根,当n1时,其余结点被分成m(m0)个互不相交的子集T1,T2,...,Tm,每个子集又是一棵树。由此可以看出,树的定义是递归。 基本术语 结点(node)——表示树中的元素,包括数据项及若干指向其子树的分支 结点的度(degree)——结点拥有的子树数 叶子(leaf)——度为0的结点,又叫终端结点 孩子(child)——结点子树的根称为该结点的孩子 双亲(parents)——孩子结点的上层结点叫该结点的~ 树的度——一棵树中最大的结点度数 结点的层次(level)——从根结点算起,根为第一层,它的孩子为第二层…… 深度(depth)——树中结点的最大层次数 有序树、无序树 如果树中每棵子树从左向右的排列拥 有一定的顺 序,不得互换,则称为有序树,否则称为无序树。 森林 是m(m≥0)棵互不相交的树的集合。 在树结构中,结点之间的关系又可以用家族关系描述,定义如下: 孩子、双亲 结点子树的根称为这个结点的孩子,而这个结点又被称为孩子的双亲。 子孙 以某结点为根的子树中的所有结点都被称为是该结点的子孙。 祖先 从根结点到该结点路径上的所有结点。 兄弟 同一个双亲的孩子之间互为兄弟。 堂兄弟 双亲在同一层的结点互为堂兄弟。 2. 树的基本运算 常用操作: (1) Initiate(t)初始化一棵空树t。 (2) Root(x)求结点x所在树的根结点。 (3) Parent(t,x)求树t中结点x的双亲结点。 (4) Child(t,x,i)求树t中结点x的第i个孩子结点。 (5) RightSibling(t,x)求树t中结点x的第一个右边兄弟结点。 (6) Insert(t,x,i,s)把以s为根结点的树插入到树t中作为结点x的第i棵子树。 (7) Delete(t,x,i)在树t中删除结点x的第i棵子树。 (8) Traverse(t)是树的遍历操作 5.2 二叉树 5.2.1 二叉树的定义和基本运算 1. 定义 定义:二叉树是另一种树形结构。它与树形结构的区别是: (1)每个结点最多有两棵子树; (2)子树有左右之分。 二叉树也可以用递归的形式定义。即:二叉树是n(n≥0)个结点的有限集合。当n=0时,称为空二叉树;当n0时,有且仅有一个结点为二叉树的根,其余结点被分成两个互不相交的子集,一个作为左子集,另一个作为右子集,每个子集又是一个二叉树。 图 5-6 二叉树的5种形态: 二叉树性质 性质1: 【性质3】 对于任意一棵二叉树BT,如果度为0的结点个数为n0,度为2的结点个数为n2,则n0=n2+1。 证明: 1、结点总数为度为0的结点加上度为1的结点再加上度 为2的结点: n = n0 + n1 + n2 2、另一方面,二叉树中一度结点有一个孩子,二 度结 点有二个孩子,根结点不是任何结点的孩子,因此, 结点总数为: n = n1 + 2n2 + 1 3、两式相减,得到: n0 = n2 + 1 特殊形式的二叉树 满二叉树 定义: 【性质4】 具有n个结点的完全二叉树的深度为 ?log2n?+1。其中,?log2n? 的结果是不大于log2n的最大整数。 证明:假设具有n个结点的完全二叉树的深度为K,则根据性质2可以得出: 2K-1-1n≤2K-1 将不等式两端加1得到: 2K-1≤n2K (n 为整数)

文档评论(0)

docinpfd + 关注
实名认证
内容提供者

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

版权声明书
用户编号:5212202040000002

1亿VIP精品文档

相关文档