习题5树及二叉树.pptVIP

  1. 1、本文档共24页,可阅读全部内容。
  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文档。上传文档
查看更多
习题5树及二叉树

1 填空题;(5)深度为k的二叉树中,所含叶子的个数最多为(2k-1). (6)具有100个结点的完全二叉树的叶子结点数为(50)。 ;(1) 如果结点A有3个兄弟,B是A的双亲,则B的度是( D )。 A.1 B.2 C.3 D.4;(5) 深度为k的完全二叉树至少有( B )个结点,至多有( C )个结点。 A.2k-2+1 B.2k-1 C.2k-1 D.2k-1-1 ;(9) 设森林中有4棵树,树中结点的个数依次为n1, n2, n3, n4, 则把森林转换成二叉树后,其根结点的右子树上有( D )个结点。根结点的左子树上有( A )个结点。 A.n1-1 B.nl C.nl+n2+n3 D.n2+n3+n4;(11) 下列编码中,( B )不是前缀编码。 A. (00,01,10,11) B. (0,1,00,11) C.(0,10,110,111) D. (1,01,000,001) (12) 为5个使用频率不等的字符设计哈夫曼编码,不可能的方案是( C ). A.111,110,10,01,00 B. 000,001,010,011,1 C. 100,11,10,1,0 D. 001,000,01,11,10 (13) 为5个使用频率不等的字符设计哈夫曼编码,不可能的方案是( D ). A. 000,001,010,011,1 B. 0000,0001,001,01,1 C. 000,001,01,10,11 D. 00,100,101,110,111 (14) 设哈夫曼编码的长度不超过4,若已经对两个字符编码为1和01,则最多还可以为( C )个字符编码. A. 2 B. 3 C. 4 D. 5;(3) 已知一棵度为m的树中:n1个度为1的结点,n2个度为2的结点,…,nm个度为m的结点,问该树中共有多少个叶子结点?;(4) 已知一棵二叉树的中序和后序序列为CBEDAFIGH和CEDBIFHGA,试构造该二叉树。;(5) 给出叶子结点的权值集合为W={5,2,9,11, 8,3,7}的哈夫曼树的构造过程。 ;5 算法设计;其他解法一: int BiTree::count(BiNodeT *rt) { if (rt ==NULL) return 0; else return count(rt-lchild)+count(rt-rchild)+1; };(3) 设计算法求二叉树的深度.;(3) 设计算法求二叉树的深度.;(3) 设计算法求二叉树的深度.;(3) 设计算法求二叉树的深度.;(6) 以二叉链表为存储结构,在二叉树中删除以值x为根结点的子树.;void BiTree::DeleteX(BiNodeT *rt, T x) { if(rt!=NULL) { if(rt-data==x) {Release(rt); rt=NULL;} else{p=rt; top= -1; //采用顺序栈s,并假定不会发生上溢 while (p!=NULL | | top!= -1) { while (p!= NULL) //找此结点的最左边的后代 { s[++top]=p; //此结点进栈 if((p-lchild!=NULL )(p-lchild-data==x)) {Release(p-lchild); p-lchild=NULL;} if((p-rchild!=NULL )(p-rchild-data==x)) {Release(p-rchild); p-rchild=NULL;} p=p-lchild; } #2 while if (top!= -1) { p=s[top--]; p=p-rchild; } }//#1 while }};void BiTree::DeleteX(BiNodeT *rt, T x) { if(rt!=NULL) { if(rt-data==x) {Release(rt);

文档评论(0)

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

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

1亿VIP精品文档

相关文档