重要提示:请勿将账号共享给其他人使用,违者账号将被封禁!
查看《购买须知》>>>
首页 > 计算机等级考试
网友您好,请在下方输入框内输入要搜索的题目:
搜题
拍照、语音搜题,请扫码下载APP
扫一扫 下载APP
题目内容 (请给出正确答案)
[主观题]

假设二叉树根节点的层次为0,一棵深度(高度)为k的满二叉树和同样深度的完全二叉树各有f个节点和c

假设二叉树根节点的层次为0,一棵深度(高度)为k的满二叉树和同样深度的完全二叉树各有f个节点和c个节点,下列关系式不正确的是

A.f≥)c

B.c>f

C.f=2的k-1次幂减1

D.c大于2的A次幂减1

答案
查看答案
更多“假设二叉树根节点的层次为0,一棵深度(高度)为k的满二叉树和同样深度的完全二叉树各有f个节点和c”相关的问题

第1题

设二叉树根结点的层次编号为1,则深度为k的完全二叉树有(31)种。A.2kB.2k-1C.2(k-1)D.2k

设二叉树根结点的层次编号为1,则深度为k的完全二叉树有(31)种。

A.2k

B.2k-1

C.2(k-1)

D.2k

点击查看答案

第2题

如果一棵有n个结点的满二叉树的深度为d(树根所在的层次为1),则给出推导式:(1)用深度d表达其结
如果一棵有n个结点的满二叉树的深度为d(树根所在的层次为1),则给出推导式:(1)用深度d表达其结

如果一棵有n个结点的满二叉树的深度为d(树根所在的层次为1),则给出推导式:

(1)用深度d表达其结点总数n。

(2)用结点总数n表达深度d.

(3)若对该树的结点从1开始按中序遍历次序进行编号,则树根结点的编号如何用d表示?树根结点的左子女结点的编号如何用d表示?右子女结点的编号如何用d表示?

点击查看答案

第3题

在一棵二叉树上,度为零的节点的个数为n0,度为2的节点的个数为n2,则n0的值为

A.n2+1

B.n2-1

C.n2

D.n2/2

点击查看答案

第4题

设根节点的层次为0,则具有n个节点的完全二叉树的深度为【】。

设根节点的层次为0,则具有n个节点的完全二叉树的深度为【 】。

点击查看答案

第5题

以二叉链表存放一棵含有N个节点的二叉树,共有()个非空指针。

A.N+1

B.N-1

C.N

D.2*N

点击查看答案

第6题

深度为k的二叉树上,最多含有个节点()

A.2k-1

B.2k

C.2-1

D.2*-1

点击查看答案

第7题

假设树林F中有3棵树,其第一、第二和第三棵树的结点个数分别是n1、n2和n3,则与树林F对应的二叉树根结点的右子树上的结点个数是()。

A.1

B.n1+n2

C.n3

D.n2+n3

点击查看答案

第8题

●设某种二叉树有如下特点;结点的子树数目不是两个,则是0个。这样的一棵二叉树中有m(m>0)个子树为0的结点时,该二叉树上的结点总数为 (30) 。(30)

A.2m+l

B.2m-1

C.2(m-1)

D.2m

点击查看答案

第9题

阅读以下说明和C语言函数,将应填入(n)处的字句写在对应栏内。【说明】 下面的程序构造一棵以二叉链

阅读以下说明和C语言函数,将应填入(n)处的字句写在对应栏内。

【说明】

下面的程序构造一棵以二叉链表为存储结构的二叉树算法。

【函数】

BTCHINALR *createbt (BTCHINALR *bt )

{

BTCHINALR *q;

struct node1 *s [30];

int j,i;

char x;

printf ("i,x =" ); scanf ("%d,%c",&i,&x );

while (i!=0 && x!='$')

{ q = (BTCHINALR* malloc (sizeof (BTCHINALR )); //生成一个结点

(1);

q->1child = NULL;

q->rchild = NULL;

(2);

if((3);)

{j=i/2 //j为i的双亲结点

if(i%2==0

(4) //i为j的左孩子

else

(5) //i为j的右孩子

}

printf ("i,x =" ); scanf ("%d,%c",&i,&x ); }

return s[1]

}

点击查看答案

第10题

试题四阅读下列函数说明和C函数,将应填入 (n) 处的字句写在答题纸的对应栏内。[函数说明]函数Dele

试题四

阅读下列函数说明和C函数,将应填入 (n) 处的字句写在答题纸的对应栏内。

[函数说明]

函数DeleteNode(Bitree *r,int e)的功能是:在树根结点指针为r的二叉查找(排序)树上删除键值为e的结点,若删除成功,则函数返回0,否则函数返回-1。二叉查找树结点的类型定义为:

typedef struct Tnode{

int data;

struct Tnode *Lchild,*Rchild;

}*Bitree;

在二叉查找树上删除一个结点时,要考虑三种情况:

1若待删除的结点p是叶子结点,则直接删除该结点;

2若待删除的结点p只有一个子结点,则将这个子结点与待删除结点的父结点直接连接,然后删除结点p;

3若待删除的结点p有两个子结点,则在其左子树上,用中序遍历寻找关键值最大的结点s,用结点s的值代替结点p的值,然后删除结点s,结点s必属于上述1、2情况之一。

[函数代码]

int DeleteNode(Bitree *r,int e) {

Bitreep = *r, pp, s, c;

while((1) ) { /*从树根结点出发查找键值为e的结点*/

pp = p;

if (e< p->data) p = p -> Lchild;

else p = p->Rchild;

}

if(!p) return –1; /* 查找失败 */

if(p->Lchild && p->Rchild) { /* 处理情况3 */

s = (2);pp = p;

while ((3) ) { pp = s; s = s-> Rchild; }

p->data = s ->data; p = s;

}

/*处理情况1、2*/

if((4) ) c = p -> Lchild;

elsec = p -> Rchild;

if(p == *r) *r = c;

elseif ((5) ) pp -> Lchild = c;

elsepp->Rchild = c;

free(p);

return 0;

}

点击查看答案
下载APP
关注公众号
TOP
重置密码
账号:
旧密码:
新密码:
确认密码:
确认修改
购买搜题卡查看答案 购买前请仔细阅读《购买须知》
请选择支付方式
  • 微信支付
  • 支付宝支付
点击支付即表示同意并接受了《服务协议》《购买须知》
立即支付 系统将自动为您注册账号
已付款,但不能查看答案,请点这里登录即可>>>
请使用微信扫码支付(元)

订单号:

遇到问题请联系在线客服

请不要关闭本页面,支付完成后请点击【支付完成】按钮
遇到问题请联系在线客服
恭喜您,购买搜题卡成功 系统为您生成的账号密码如下:
重要提示:请勿将账号共享给其他人使用,违者账号将被封禁。
发送账号到微信 保存账号查看答案
怕账号密码记不住?建议关注微信公众号绑定微信,开通微信扫码登录功能
请用微信扫码测试
优题宝