- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[理学]数据结构与算法-16树与二叉树
1.6 树与二叉树 1.6.1 树的基本概念 1.6.2 二叉树及其性质 1.6.3 二叉树的存储结构 1.6.4 二叉树的遍历 1.6.1 树形结构 除一个特殊元素(根)外,每个元素只有一个前件(前趋)结点,但可有多个后件(后继)结点,结点之间具有分支、层次特性。元素之间存在1:n的关系。 1.6.1 基本术语 1.6.2 二叉树及其基本性质 二叉树的两个特点: 1.非空二叉树只有一个根结点; 2.每一个结点最多有两棵子树,且分别称为该结点的左子树与右子树。 注意: 1.二叉树是有序树,严格区分其左右; 2.二叉树不是度数为2的数,而是度数最多为2的树; 3.二叉树的左子树或右子树也为二叉树; 4.每个结点都只有左子树的二叉树称为左单支; 5.每个结点都只有右子树的二叉树称为右单支。 1.6.2 二叉树的性质 练 习 1.一棵二叉树的第i(i=1)层最多有( 2i-1 )个结点;一棵有n(n0)个结点的满二叉树共有()个叶子节点、(0)个度数为1的节点和()个度数为2的结点。 因为:n=n0+n2;n0=n2+1;所以:n2=(n-1)/2;n0= (n+1)/2 2.深度为k的完全二叉树最少有( 2k-1 )个结点,至多有( 2k-1 )个结点。 3.已知某完全二叉树有n个节点,则其高度为( ?log2n? +1 )。 4.具有100个结点的完全二叉树的叶子节点数为(50)。 100=n0+1+n2;或100=n0+n2; n0=n2+1; 练 习 5.已知一棵二叉树有2个度为1的结点,3个度为2的结点。则该树中有(4)个叶子结点。 n0=n2+1 6.一个满二叉树共有n个结点,其中有m个叶子节点,则m和n之间的关系是(m=(n+1)/2)。 1.6.3 二叉树的存储 二叉树通常采用链式存储结构 每个存储结点由两部分组成:数据域(存放结点本身的数据)和两个指针域(分别指向双亲和左、右孩子的指针)。 5.3 二叉树的遍历 一、层序遍历 一、 递归遍历 练 习1 先序遍历: 中序遍历: 后序遍历: 练 习2 练 习 3 1. 已知二叉树的先根序列为ABCDEFG,中根序列为BCAFEGD,请画出该二叉树。 练 习 3 1. 已知二叉树的先根序列为ABCDEFG,中根序列为BCAFEGD,请画出该二叉树。 练 习 4 2.已知二叉树的层序序列为ABCDEFGHIJ,中序序列为DBGEHJACIF.请画出该二叉树。 练 习 4 2.已知二叉树的层序序列为ABCDEFGHIJ,中序序列为DBGEHJACIF.请画出该二叉树。 给出遍历序列求树的结构 1.比较两个遍历序列,确定根结点、左子树、右子树; 2.对左子树或右子树,比较两个遍历序列,确定子树的根结点、左子树和右子树三部分; 3.依次推导,直到序列中所有结点全部被遍历。 * 根结点:树中无前件结点但有后件结点的结点。 父结点:某个结点的前件结点称为该结点的父结点。 子结点:某个结点的后件结点称为该结点的子结点。 叶子结点:没有后件结点的结点。 结点的度:结点所拥有的子结点的个数。树的度: 树中结点度最大的结点的度数。 子树:以某个结点的一个子结点为根构成的树称为该结点的一颗子树。 层数:从根开始算起,根为第1层,其它结点 的层数为其双亲的层数加1。 高度或深度:树中结点的最大层数 J I A C B D H G F E K L M A D E B C 性质1 二叉树的第i层上最多有2i-1个结点 性质2 深度为k的二叉树最多有 2k-1个结点 性质3 叶子结点数n0,度2结点数n2,满足n0 = n2 +1 n=n0+n1+n2 n=1+n1+2×n2 n0=n2+1 [数学归纳法] 20 + 21 + 22 + … + 2k-1 = 2k-1 A G D E F B C * * 2005年9月试题填空4 一棵二叉树第六层(根结点为第一层)的结点数最多为?? 【 】?? 个。 * * 课后习题选择10 设树T的度为4,其中度为1,2,3,4的结点个数分别为4,2,1,1,则T中的叶子结点数为 A) 8 B) 7 C) 6 D) 5 N=n0+n1+n2+n3+n4 N=1+n1+2*n2+3*n3+4*n4 N0=n2+2*n3+3*n4+1 * * 2007年9月试题选择8 一棵二叉树中共有70个叶子结点与80个度为1的结点,则该二叉树中的总结点数为 A)219 B)221 C)229 D)231 * * 2007年4月试题选择7 某二叉树中有n个度为2的结点则该二叉树中的叶子结点数为 A)n+1 B )n-1 C)2n D)n/2
文档评论(0)