牛鱼嘴风景区游玩攻略:求数据结构 c语言算法代码

来源:百度文库 编辑:高考问答 时间:2024/05/01 07:02:09
一棵满二叉树的结点个数为20到40之间的素数,求二叉树的叶结点的个数。

int a,b,B=0,d=1,i;
int c[5];
for(a=0;;a++)
{
if(!a) b=1;
else if(a==1) b=3;
else if(a>1)
{b=2;
for(i=2;i<=a;i++)
{b=2*b;}
}
B=B+b;
if(B>=20)
{c[d]=b;
d++;
}
if(B>=40)
break;
}
输出c数组元素

满二叉树计算结点个数的公式是2^n-1.
条件:满二叉树的结点个数为20到40之间的素数
通过判断得知n=5成立·也只有n等于5的时候结果才在20到40之间·因为n=5,所以二叉树的叶结点的个数为2^(n-1)=2^4=16个

n是树的层次
代码你就自己写吧,说的已经很明白了