猿问
回到首页
个人中心
反馈问题
注册登录
下载APP
首页
课程
实战
体系课
手记
专栏
慕课教程
以下内容为求二叉树函数的要求,求指教!
已知某二叉树结点数据类型为整型。
1。定义结点类型和结点指针类型。
2。编写一个函数,实现求二叉树的叶结点数。
3。编写函数,判断二叉树是否为满二叉树。
用C语言编
幕布斯6054654
浏览 149
回答 1
1回答
呼唤远方
完全二叉树中,任意结点的左、右子树的深度都相等,所以你只需做一个后根遍历,即可知道一个二叉树是否为完全二叉树;下面假设二叉树的结点结构是:typedef struct _Node{_Node* lchild;_Node* rchild;}BinaryTree;用VC编程,算法如下://检查二叉树是否完全二叉树,如果不是,返回0,//否则返回二叉树的高度int checkCompleteBinaryTree(BinaryTree* tree){//叶子结点if(tree->lchild==NULL && tree->rchild==NULL)return 1;//缺一个子树,不是完全二叉树if(tree->lchild==NULL || tree->rchild==NULL)return 0;//左子树高度int lheight=checkCompleteBinaryTree(tree->lchild);//左子树不是完全二叉树if(lheight==0)return 0;//右子树高度int rheight=checkCompleteBinaryTree(tree->rchild);//右子树不是完全二叉树if(rheight==0)return 0;//左右子树高度不相同,因此不是完全二叉树if(lheight!=rheight)return 0;//返回二叉树的高度return lheight+1;}
0
0
0
打开App,查看更多内容
随时随地看视频
慕课网APP
相关分类
C++
typedef入门问题
1 回答
算法
正则表达式,要怎麽从下一个字开始匹配,而不是从下一个词?
0 回答
scrapy 解析js代码或正则?
2 回答
继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续