第06章_树与二叉树A.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文档。上传文档
查看更多
* * 左右子树交换之后即为不同的二叉树 * * 编号规则:从根结点开始,自上而下,自左而右。 * ?log2(n)?取不大于log2(n)的整数 讨论:二叉树怎样还原为树? a b e i d f h g c 要点:逆操作,把所有右孩子变为兄弟! a b d e f h g i c * 性质1 在二叉树的第 i 层上至多有 2i -1个结点。(i ? 1) 证明:当i=1时,只有根结点,2i-1=20=1。 假设对所有j,ij?1,命题成立,即第j层上至多有2j-1 个结点。 由归纳假设第i-1 层上至多有 2i-2个结点。 二叉树的每个结点的度至多为2,故在第i层上的最大结点数为第i-1层上的最大结点数的2倍,即2*2i-2= 2i-1。 二叉树的重要特性 * 性质2 深度为 k 的二叉树至多有 2k-1个结点,其中k ? 1。 证明:由性质1可见,深度为k的二叉树的最大结点数为 =20 + 21 + … + 2k-1 = 2k -1 * 性质3 对任何一棵二叉树T, 如果其叶子结点数为 n0, 度为2的结点数为 n2,则n0=n2+1。 证明: n = n0 + n1 + n2 ① e = n – 1 = 2n2 + n1 ② 因此,2n2 + n1 = n0 + n1 + n2 - 1 n0 = n2 + 1 * 设e为树的分支总数,则e = n-1。这些分支由度为1或2的节点射出,所以: 满二叉树 (Full Binary Tree) 定义1 : 一棵深度为k且有2 k-1个结点的二叉树称为满二叉树。 两种特殊形态的二叉树 7 5 4 3 8 9 10 11 13 14 15 12 1 2 6 特点:每一层上的结点数都达到最大,叶子全部在最底层 * 非完全二叉树 完全二叉树 (Complete Binary Tree) 若设二叉树的深度为h,除第 h 层外,其它各层 (0 ? h-1) 的结点数都达到最大值,第 h 层从右向左连续缺若干结点。 完全二叉树 6 2 1 5 4 3 B A C D E G F * 性质4 具有 n (n ? 0) 个结点的完全二叉树的深度为?log2(n) ?+1 。 证明:设完全二叉树的深度为 h,则根据性质2和完全二叉树的定义有2h-1-1 n ? 2h - 1, 即2h-1 ? n 2h,取对数 h-1 ? log2n h,又h是整数,因此有 h = ?log2(n)? +1 * 性 质 5 若对含n个结点的完全二叉树从上到下且从左至右进行1至n的编号,则对完全二叉树中任意一个编号为i的结点: 6 2 1 5 4 3 2 4 5 3 6 1 哪个是完全二叉树 * (1)若i=1,则该结点是二叉树的根,否 则,编号为?i/2? 的结点为其父亲结点。 (2)若2in,则该结点无左孩子,否则, 编号为2i的结点为其左孩子结点。 (3)若2i+1n,则该结点无右孩子结点, 否则,编号为2i+1的结点为其右孩子 结点。 * * 节点i和i+1在同一层上 i+1 2i+2 2i+3 i 2i+1 2i i 2i 2i+1 i+1 2i+3 ?i/2 ? 2i+2 节点i和i+1不在同一层上 二、二叉树的链式存储表示 一、二叉树的顺序存储表示 6.3 二叉树的存储结构 * 顺序存储表示 用一组地址连续的存储单元存储二叉树中的数据元素。将完全二叉树上编号为i的结点元素存储在一维数组中下标为i-1的分量中 B A C E D F G H I J K L M N O * B A C E D F G H I J 1 2 3 4 5 6 7 10 8 9 1 练习 * A B D C E F 0 1 2 3 4 5 A B C D E F 2 4 1 6 3 5 对于一般的非完全二叉树不能直接使用二叉树的顺序存储结构。 * 可以首先在非完全二叉树中增添一些并不存在的空结点使之变成完全二叉树的形态,然后再用顺序存储结构存储。 B A C D E G F B A C D E G F (a)一般二叉树 (b)完全二叉树形态 * 单支树 由于一般二叉树必须仿照完全二叉树那样存储,可能会浪费很多存储空间,单支树就是一个极端情况。 * 链表存储表示 * A D E B C F ? ? ? ? ? ?

文档评论(0)

精品报告 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档