数据结构c语言版第六章课件严蔚敏.pptxVIP

数据结构c语言版第六章课件严蔚敏.pptx

  1. 1、本文档共134页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第6章 树和二叉树 ;6.1 树的定义和基本术语;2. 树的逻辑表示法 (1) 树型表示法。这是树的最基本的表示,使用一棵倒置的树表示树结构,非常直观和形象。;(2)文氏图表示法。使用集合以及集合的包含关系描述树结构。;(3)凹入表示法。使用线段的伸缩描述树结构。;(4)括号表示法(广义表表示法)。将树的根结点写在括号的左边,除根结点之外的其余结点写在括号中并用逗号间隔来描述树结构。;3. 树的基本术语 结点:包含一个数据元素及若干指向其子树的分支。 结点的度和树的度(degree):结点拥有的子树个数。树内各结点的度的最大值。 叶子(leaf)和分支结点:度为0的结点,也称为终端结点。度不为0的结点,也称为非终端结点。除根结点外,分支结点也称为内部结点。;孩子、双亲、兄弟、堂兄弟:结点的子树的根称为该结点的孩子。相应地,该结点称为孩子的双亲。同一双亲的孩子之间互称???弟。其双亲在同一层的结点互为堂兄弟。 B、C、D是A的孩子。  A 是B、C 、D的双亲。  结点H、I、 J互为兄弟结点。;路径与路径长度:对于任意两个结点ki和kj,若树中存在一个结点序列ki,ki1,ki2,…,kin,kj,使得序列中除ki外的任一结点都是其在序列中的前一个结点的后继,则称该结点序列为由ki到kj的一条路径,用路径所通过的结点序列(ki,ki1,ki2,…,kj)表示这条路径。路径的长度等于路径所通过的结点数目减1(即路径上分支数目)。可见,路径就是从ki出发“自上而下”到达kj所通过的树中结点序列。显然,从树的根结点到树中其余结点均存在一条路径。;结点的祖先和子孙:从根结点到该结点的路径上的所有结点。以某结点为根的子树中的任一结点都称为该结点的子孙。 结点的层次和树的高度(深度):从根结点开始定义,根为第一层,根的孩子为第二层,依此类推。树中结点的最大层次。 ;有序树和无序树:在树中,如果各子树Ti是按照一定的次序从左向右安排的,且相对次序是不能随意改变的,则称为有序树,否则称为无序树。  森林: m(m≥0)棵互不相交的树的集合。将一棵非空树的根结点删去,树就变成一个森林;反之,给m棵独立的树增加一个根结点,并把这m棵树作为该结点的子树,森林就变成一棵树。;森林; 树的运算主要分为三大类: 第一类,寻找满足某种特定关系的结点,如寻找当前结点的双亲结点等; 第二类,插入或删除某个结点,如在树的当前结点上插入一个新结点或删除当前结点的第i个孩子结点等; 第三类,遍历树中每个结点,这里着重介绍。;6.2 二 叉 树 ;二叉树的五种基本形态 ;2. 二叉树的性质 ;性质2: 深度为k的二叉树至多有2k-1个结点(k≥1)。 证明:因为深度为k的二叉树,其结点总数的最大值是将二叉树每层上结点的最大值相加,所以深度为k的二叉树的结点总数至多为 ; 性质3: 对任意一棵二叉树,若终端结点数为n0,度为 2的结点数为n2,则n0=n2+1。 证明:设二叉树中结点总数为n,n1为二叉树中度为1 的结点总数,设二叉树中分支数目为B 。 ①n=n0+n1+n2 除根结点外,每个结点均对应一个进入它的分支: ②n=B+1 二叉树中的分支都是由度为1和度为2的结点发出 ③B=n1+2n2 ;满二叉树: ;完全二叉树: 深度为k,结点数为n的二叉树,如果其结点1~n的位置序号分别与满二叉树的结点1~n的位置序号一一对应,则为完全二叉树, 满二叉树必为完全二叉树, 而完全二叉树不一定是满二叉树。 ; 性质4:具有n个结点的完全二叉树的深度为 ?log2n?+1或?log2(n+1)?。 证明:设n个结点的完全二叉树的深度为k,根据 性质2有 2k-1-1<n ≤2k-1 可得 2k-1≤n < 2k, 即 k-1≤log2n < k  因为k是整数,所以k-1= ?log2n?,k= ?log2n?+1, 故结论成立。 2k-1<n +1≤2k → k-1 < log2(n+1) ≤ k → k= ?log2(n+1)?  ;性质5:对完全二叉树中编号为i的结点(1≤i≤n,n≥1,n为结点数)有: (1)若i=1,则结点i是二叉树的根,无双亲。 若i>1,则它的双亲结点的编号为?i/2?。当i为偶数时,其双亲结点的编号为i/2,它是双亲结点的左孩子结点,当i为奇数时,其双亲结点的编号为(i-1)/

文档评论(0)

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

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

1亿VIP精品文档

相关文档