首页 > 外贸类考试
题目内容 (请给出正确答案)
[多选题]

一颗二叉树的括号表示为“1(2(4,5(6,7)),3)”)。设N代表二叉树的根,L代表根节点的左子树,R代表根节点的右子树。若遍历后的节点序列为3,1,7,5,6,2,4,则其遍历方式不是()。

A.RLN

B.RNL

C.NRL

D.LRN

查看答案
答案
收藏
如果结果不匹配,请 联系老师 获取答案
您可能会需要:
您的账号:,可能还需要:
您的账号:
发送账号密码至手机
发送
安装优题宝APP,拍照搜题省时又省心!
更多“一颗二叉树的括号表示为“1(2(4,5(6,7)),3)”)…”相关的问题
第1题
一颗二叉树中共有70个叶子结点与80个度为1的结点,则该二叉树中的总结点数为()。 A.219B.2

一颗二叉树中共有70个叶子结点与80个度为1的结点,则该二叉树中的总结点数为()。

A.219

B.221

C.229

D.231

点击查看答案
第2题
以二叉链表为存储表示,试编写一个算法,用括号形式key(LT,RT)输出二叉树的各个结点。其中,key是
以二叉链表为存储表示,试编写一个算法,用括号形式key(LT,RT)输出二叉树的各个结点。其中,key是

根结点的数据,LT和RT是括号形式的左子树和右子树。要求空树不打印任何信息,一个结点的树的打印形式是x,而不应是(x,)的形式。

点击查看答案
第3题
● 若n2、n1、n0分别表示一个二叉树中度为2、度为1和叶子结点的数目(结点的度定义为结点的子树数目),
则对于任何一个非空的二叉树,(59) 。

(59)A.n2一定大于n1

B.n1一定大于n0

C.n2一定大于n0

D. n0一定大于n2

点击查看答案
第4题
下面关于二叉树的基本性质说明错误的是______ 。A.在二叉树的第k层上,最多有2k(k≥1)个结点B.深度

下面关于二叉树的基本性质说明错误的是______ 。

A.在二叉树的第k层上,最多有2k(k≥1)个结点

B.深度为m的二叉树最多有2m-1(m≥1)个结点

C.深度为0的结点(即叶子结点)总是比深度为2的结点多一个

D.具有n个结点的二叉树,其深度至少为[log2n]+1,其中[log2n]表示取不大于log2n的最大整数

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

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

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

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

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

点击查看答案
第6题
请从以下选项中选择相应的判断逻辑填写【算法4-2】中的“判断条件1”至“判断条件3”。注意,如“判断条件
2”的逻辑判断结果为假,则无须对“判断条件3”进行判断。 判断条件1:(8) 判断条件2:(9) 判断条件3:(10) 【供选择的答案】A.栈顶元素表示的是与当前字符匹配的左括号

B.栈顶元素表示的是与当前字符匹配的右括号

C.字符是左括号

D.字符是右括号

E.栈不空F.栈空G.字符是括号

点击查看答案
第7题
若用n个权值构造一颗最优二叉树(哈夫曼树),则该二叉树的结点总数为()A.2nB.2n-1C.2n+1D.2n+2

若用n个权值构造一颗最优二叉树(哈夫曼树),则该二叉树的结点总数为()

A.2n

B.2n-1

C.2n+1

D.2n+2

点击查看答案
第8题
已知测量坐标系的圆曲线方程为(y-4)2+(x-2)2=32,此圆上的最北点、最南点的坐标(y,x)为()。

A.(4,5)、(4,1)

B.(5,4)、(4,﹣1)

C.(5,4)、(4,1)

D.(4,5)、(4,﹣1)

点击查看答案
第9题
有一颗二叉树有如下特点;不存在子树数目是1个的结点。这样的一棵二叉树中有m(m>0)个子树为。的结点

有一颗二叉树有如下特点;不存在子树数目是1个的结点。这样的一棵二叉树中有m(m>0)个子树为。的结点时,该二又树上的结点总数为(91)。

A.2m+1

B.2m-1

C.2(m-1)

D.2(m+1)

点击查看答案
第10题
若一颗二叉树中只有叶结点和左右子树皆非空的结点,设叶结点的个数为n,则左右子树皆非空的结点个
数为___________。

点击查看答案
第11题
阅读以下预备知识、函数说明和C代码,将应填入(n)处的字句写在答题纸的对应栏内。 【预备

阅读以下预备知识、函数说明和C代码,将应填入(n)处的字句写在答题纸的对应栏内。

【预备知识】

①对给定的字符集合及相应的权值,采用哈夫曼算法构造最优二叉树,并用结构数组存储最优二叉树。例如,给定字符集合{a,b,c,d}及其权值2、7、4、5,可构造如图3所示的最优二叉树和相应的结构数组Ht(数组元素Ht[0]不用)(见表5)。

图3最优二叉树

表5 结构数组Ht

结构数组Ht的类型定义如下:

define MAXLEAFNUM 20

struct node{

char ch;/*当前结点表示的字符,对于非叶子结点,此域不用*/

int weight;/*当前结点的权值*/

int parent;/*当前结点的父结点的下标,为0时表示无父结点*/

int lchild,rchild;

/*当前结点的左、右孩子结点的下标,为0时表示无对应的孩子结点*/

}Ht[2*MAXLEAFNUM];

②用′0′或′1′标识最优二叉树中分支的规则是:从一个结点进入其左(右)孩子结点,就用′0′(′1′)标识该分支(示例如图3所示)。

③若用上述规则标识最优二叉树的每条分支后,从根结点开始到叶子结点为止,按经过分支的次序,将相应标识依次排列,可得到由′0′、′1′组成的一个序列,称此序列为该叶子结点的前缀编码。例如图3所示的叶子结点a、b、c、d的前缀编码分别是110、0、111、10。

【函数5.1说明】

函数void LeafCode(int root,int n)的功能是:采用非递归方法,遍历最优二叉树的全部叶子结点,为所有的叶子结点构造前缀编码。其中形参root为最优二叉树的根结点下标;形参n为叶子结点个数。

在构造过程中 ,将Ht[p].weight域用作被遍历结点的遍历状态标志。

【函数5.1】

char**Hc;

void LeafCode(int root,int n)

{/*为最优二叉树中的n个叶子结点构造前缀编码,root是树的根结点下标*/

int i,p=root,cdlen=0;char code[20];

Hc=(char**)malloc((n+1)*sizeof(char*));/*申请字符指针数组*/

for(i=1;i<=p;++i)

Ht[i].weight=0;/*遍历最优二叉树时用作被遍历结点的状态标志*/

while(p){/*以非递归方法遍历最优二叉树,求树中每个叶子结点的编码*/

if(Ht[p].weight==0){/*向左*/

Ht[p].weight=1;

if (Ht[p].lchild !=0) { p=Ht[p].lchild; code[cdlen++]=′0′;}

else if (Ht[p].rchild==0) {/*若是叶子结 点,则保存其前缀编码*/

Hc[p]=(char*)malloc((cdlen+1)*sizeof(char));

(1) ;strcpy(He[p],code);

}

}

else if (Ht[p].weight==1){/*向右*/

Ht[p].weight=2;

if(Ht[p].rchild !=0){p=Ht[p].rchild;code[cdlen++]=′1′;}

}

else{/*Ht[p].weight==2,回退*/

Ht[p].weight=0;

p= (2) ; (3) ;/*退回父结点*/

}

}/*while结束*/

}

【函数5.2说明】

函数void Decode(char*buff,int root)的功能是:将前缀编码序列翻译成叶子结点的字符序列并输出。其中形参root为最优二叉树的根结点下标;形参buff指向前缀编码序列。

【函数5.2】

void Decode(char*buff,int root)

{ int pre=root,p;

while(*buff!=′\0′){

p=root;

while(p!=0){/*存在下标为p的结点*/

pre=p;

if((4) )p=Ht[p].lchild;/*进入左子树*/

else p=Ht[p].rchild;/*进入右子树*/

buff++;/*指向前缀编码序列的下一个字符*/

(5) ;

printf(″%c″,Ht[pre].ch);

}

}

点击查看答案
退出 登录/注册
发送账号至手机
密码将被重置
获取验证码
发送
温馨提示
该问题答案仅针对搜题卡用户开放,请点击购买搜题卡。
马上购买搜题卡
我已购买搜题卡, 登录账号 继续查看答案
重置密码
确认修改