我是靠谱客的博主 欣喜歌曲,最近开发中收集的这篇文章主要介绍【数据结构填空题】关于递归求二叉树度为2的数目【C/C++编程】【数据结构填空题】关于递归求二叉树度为2的数目【C/C++编程】,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

【数据结构填空题】关于递归求二叉树度为2的数目【C/C++编程】

前言:
昨天跟同学研究这道题目;然后一直在想,想出来了很多种,但是都是由于第二个if的原因最后递归调用不到.
因为我是从低向上去想这道题目的,然后填空的.最后还是经过不断努力还是想出来了.

题目如下:
二又链表类型定义:
typedef struct BiTNode{
TElemType data;
struct BiTNode *lchild,*rchild;
},BiTNode,*BiTree;
算法binode (BiTree T)实现计算二叉树T中度为2的节点数目.
请在空确处填写合适的内容,使其成为完整的算法。
int binode (BiTree T)/计算二叉树T中度为2的结点的数目/
{
if(NULL==T)return (1);
if((2))return1;
return binode(T->lchild)+binode(3)
}

题目:二又链表类型定义:

typedef struct BiTNode{
  TElemType data;
  struct BiTNode *lchild,*rchild;
},BiTNode,*BiTree;

/*
算法binode (BiTree T)实现计算二叉树T中度为2的节点数目.
请在空确处填写合适的内容,使其成为完整的算法。
*/
int binode (BiTree T)/*计算二叉树T中度为2的结点的数目*/
{
   if(NULL==T)return1);
   if(2))return1;
  return binode(T->lchild)+binode(3}

图片版题目
我们先画个二叉树作参考(度为2的的数目为2个),本二叉树的先序遍历为A—B—D—E—C—F—G
度为2的的数目为2个

int binode(Bitree T) {
	if (T == NULL) return 0;
	if (T->lchild != NULL && T->rchild != NULL &&
	T->lchild->lchild == NULL && T->lchild->rchild == NULL &&
        T->rchild->lchild == NULL  && T->rchild->rchild == NULL) return 1;
	printf("t%c", T->data);
	return B(T->lchild) + B(T->rchild)+(T->rchild!=NULL && T->lchild!=NULL? 1:0);
}
  • 第一空:0
  • 第二空:T->lchild != NULL && T->rchild != NULL &&T->lchild->lchild == NULL && T->lchild->rchild == NULL &&T->rchild->lchild == NULL && T->rchild->rchild == NULL
    注:第二空也可直接写false
  • 第三空:(T->rchild)+(T->rchild!=NULL && T->lchild!=NULL? 1:0)

运行结果
运行结果

在让我们测试另一颗二叉树

这是一棵有3个度为2的节点
先序遍历为A—B—D—E—C—F—G—H

度为2的的数目为3个

运行结果
运行结果

以上为本人的答案;其实计算二叉树度为2的数目,我们一般这样写

int binode(Bitree T) {
	if (T == NULL) return 0;
	if(T->lchild != NULL &&T->rchild != NULL)  return B(T->lchild)+B(T->rchild)+1;
	return B(T->lchild)+B(T->rchild);
}

具体我就不分析,大家自己研究一下吧~
我也要学习去了,考研人,考研魂,考研都是人上人.
加油

写于:2021年11月13日上午09点
作者QQ:420318184
邮箱:fy@0fy0.com

最后

以上就是欣喜歌曲为你收集整理的【数据结构填空题】关于递归求二叉树度为2的数目【C/C++编程】【数据结构填空题】关于递归求二叉树度为2的数目【C/C++编程】的全部内容,希望文章能够帮你解决【数据结构填空题】关于递归求二叉树度为2的数目【C/C++编程】【数据结构填空题】关于递归求二叉树度为2的数目【C/C++编程】所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(41)

评论列表共有 0 条评论

立即
投稿
返回
顶部