数据结构 课件 二叉树.ppt

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

树与二叉树 软件学院 王建文 树的用处举例 线性表适合表示一个顺序序列 (e0, e1, e2, …, en-1) Days of week. Months in a year. Students in this class. 树适合表示具有层次结构的数据 族谱(课本176页), 公司组织结构等 Example Tree 搜索树 中文输入法的实现原理是字符编码与字符或词组之间的映射形成一张码表,如: zhang,张; wang,王; zhao,赵; li,李; laoshi,老师; 线性表存储,顺序地查找,时间复杂度O(n) 广义表存储,逐层地查找,时间复杂度O(h) 树存储, 逐层地查找,时间复杂度O(h),大约为O(log n) 第五章 树 ?树和森林的概念 二叉树 (Binary Tree) 二叉树的表示 二叉树遍历 (Binary Tree Traversal) 线索化二叉树 (Threaded Binary Tree) 堆 ( Heap ) 树与森林 (Tree Forest) 二叉树的计数 霍夫曼树 (Huffman Tree) 基本术语 结点(node)——表示树中的元素,包括数据项及若干指向其子树的分支 结点的度(degree)——结点拥有的子树数 叶子(leaf)——度为0的结点 孩子(child)——结点子树的根称为该结点的孩子 双亲(parents)——孩子结点的上层结点叫该结点的~ 基本术语 兄弟(sibling)——同一双亲的孩子 树的度——一棵树中最大的结点度数 结点的层次(level)——从根结点算起,根为第一层,它的孩子为第二层…… 深度(depth)——树中结点的最大层次数 森林(forest)——m(m?0)棵互不相交的树的集合 树的表示方法 二叉树 (Binary Tree) 二叉树的定义 一棵二叉树是结点的一个有限集合,该集合或者为空,或者是由一个根结点加上两棵分别称为左子树和右子树的、互不相交的二叉树组成。 二叉树的性质 性质1 若二叉树结点的层次从 1 开始, 则在二叉树的第 i 层最多有 2i-1 个结点。( i≥1) [证明用数学归纳法] 性质2 深度为 k 的二叉树最少有 k 个结点,最多有 2k-1个结点。( k≥1 ) 因为每一层最少要有1个结点,因此,最少结点数为 k。最多结点个数借助性质1:用求等比级数前k项和的公式 20 +21 +22 + …+2k-1 = 2k-1 性质3 对任何一棵二叉树,如果其叶结点有 n0 个, 度为 2 的非叶结点有 n2 个, 则有 n0=n2+1 若设度为 1 的结点有 n1 个,总结点数为n, 总边数为e,则根据二叉树的定义, n = n0+n1+n2 e = 2n2+n1 = n-1 因此,有 2n2+n1 = n0+n1+n2-1 n2 = n0-1 n0 = n2+1 例:已知叶子数为20,10个结点有一个左孩子,15个结点有一个右孩子,求该二叉树的总结点数。 解:n0 = 20 n1 = 10 + 15 = 25 由于 n0 = n2 + 1 则:n2 = n0 – 1= 19 ∴ n = n0 + n1 + n2 = 20 + 25 + 19 = 64 满二叉树 定义:满二叉树是满足如下条件的二叉树: ① 任一非叶子结点均有两个孩子; ② 对于二叉树的任一层,若该层上有一个结点有孩子,则该层上所有结点均有孩子。 特点:满二叉树的每层都有最大结点数。 完全二叉树 定义:在满二叉树的最下层从右到左连续地删除若干个结点所得到的二叉树。 特点:① 叶子结点只可能在层次最大的两层上出现; ② 满二叉树必为完全二叉树, 而完全二叉树不一定是满二叉树。 例:满二叉树和完全二叉树 性质4 具有 n (n≥0) 个结点的完全二叉树的深度为 ?log2(n+1)? 设完全二叉树的深度为k,则有 2k-1-1 n ≤ 2k-1 变形 2k-1 n+1≤2k 取对数 k-1 log2(n+1) ≤k 有 ?log2(n+1)? = k 性质5 如将一棵有n个结点的完全二叉树自顶向下,同一层自左向右连续给结点编号1, 2, …, n

文档评论(0)

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

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

版权声明书
用户编号:6111134150000003

1亿VIP精品文档

相关文档