首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明和C程序,将应填入(n)处的字句写在对应栏中。 [说明] 借助一个栈结构,可实现二叉树的非递归遍历算法。InOrderTraverse数实现中序非递归遍历,遍历 过程如下: 若不是空树,根节点入栈,进入左子树;若已
阅读下列说明和C程序,将应填入(n)处的字句写在对应栏中。 [说明] 借助一个栈结构,可实现二叉树的非递归遍历算法。InOrderTraverse数实现中序非递归遍历,遍历 过程如下: 若不是空树,根节点入栈,进入左子树;若已
admin
2010-12-17
86
问题
阅读下列说明和C程序,将应填入(n)处的字句写在对应栏中。
[说明]
借助一个栈结构,可实现二叉树的非递归遍历算法。InOrderTraverse数实现中序非递归遍历,遍历
过程如下:
若不是空树,根节点入栈,进入左子树;若已经是空树,则栈顶元素出栈,访问该元素(根节点),进入该节点的右子树,继续直到遍历完成。
函数中使用的预定义符号如下:
typedef struct BiTNode{
int data;
struct BiTNode *iChiid,*rChiid;
} BiTNode,*BiTree;
typedef struct SNode{/*链栈的节点类型*/
BiTree elem;
struct SNode *next;
}SNode;
[函数]
int InOrderTraverse(BiTree root)
{
BiTree P;
SNode *q,*stop=NULL;/*不带头节点的单链表作为栈的存储结构*/
P=root;
while(p !=NULL || stop !=NULL){
if( (1) ){ /*不是空树*/
q=(SNode*)malloc(sizeof q);
if(q==NULL)return-1;
/*根节点指针入栈*/
(2);
q->elem=P;
stop=q;
P=(3); /*进入根的左子树*/
}else{
q=stop;
(4); /*栈顶元素出栈*/
printf("%d|,q->elem->data); /*防问根节点*/
P=(5); /*进入根的右子树*/
free(q); /*释放原栈顶元素*/
}/*if*/
}/*while*/
return 0;
}/*InOrderTraverse*/
(5)
选项
答案
q->elem->rChild
解析
本题考察的是二叉树的遍历以及链栈的使用。
由注释可知,空(1)是“不是空树”的条件,应填P!=NULL。
空(2)是链栈入栈操作,stop是指向链栈栈顶的指针,故空(2)应填q->next=stop。
空(3)进入根的左子树,故应填P->lChild。
空(4)是链栈出栈操作,stop是指向链栈栈顶的指针,出栈后,应修改栈顶指针,故应填stop=stop->next。
空(5)是进入右子树,要注意的是,此处是通过链栈节点q进行访问,不能想当然的认为是q->rChild,而应该是q->elem->rChild。
转载请注明原文地址:https://kaotiyun.com/show/uvDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
一个程序的控制流图中有5个节点、9条边,在测试用例数最少的情况,确保程序中每个可执行语句至少执行一次所需测试用例数的上限是______。
高度为n的完全二叉树最少的结点数为______。
以下关于防火墙功能特性的说法中,错误的是______。
系统交付后,修改偶尔会出现乱码的问题,该行为属于________________维护。
假设系统有n(n≥6)个并发进程共享资源R,且资源R的可用数为3。若采用PV操作,则相应的信号量S的取值范围应为________________。
以下关于设计功能测试用例的叙述,______是不正确的。A.尽量用80%测试用例覆盖20%的核心业务模块B.功能测试用例中不包括功能的依从性测试用例C.功能测试用例中包括业务流,也包括测试数据D.功能测试用例的设计应注意缺陷群集现象
一个程序的控制流图中有8个节点、12条边。在测试用例数最少的情况下,确保程序中每个可执行语句至少执行一次所需测试用例数的上限是________________。
在开发一个字处理软件时,首先快速发布了一个提供基本文件管理、编辑和文档生成功能的版本,接着发布提供更完善的编辑和文档生成功能的版本,最后发布提供拼写和语法检查功能的版本,这里采用了()过程模型。
程序运行过程中常使用参数在函数(过程)间传递信息,引用调用传递的是实参的()。
缺陷探测率DDP是衡量一个公司测试工作效率的软件质量成本的指标。在某公司开发一个软件产品的过程中,开发人员自行发现并修正的缺陷数量为80个,测试人员A发现的缺陷数量为50个,测试人员B发现的缺陷数为50个,测试人员A和测试人员B发现的缺陷不重复,客户反馈缺
随机试题
患儿,5岁,以单纯性肾病收入院,发病3天来阴囊水肿明显,局部皮肤紧张、变薄、透亮,尿蛋白定性(++++),治疗使用强的松,针对该表现,护理诊断为( )。
A.养心B.渗湿C.温胃D.益阴E.温阳参苓白术散除益气健脾、止泻外,还具有的功用是
燥湿化痰,理气止咳适用于清肝泻肺,化痰止咳适用于
下列各项中,不属于自制原始凭证的是()。
2012年1月,李某设立了甲一人有限责任公司(下称甲公司),注册资本为550万元。2013年1月,甲公司向乙银行借款500万元,双方签订了借款合同,借款期限为2年。陈某在借款合同中以保证人身份签字。借款合同包含如下仲裁条款:凡是与本借款债务清偿有关的纠纷
从决策的基本属性来看,决策是()。
下列属于期刊分类的是()。
WhenPaulGorski,thefounderofanorganizationcalledEdChange,visitscollegesanduniversitiestoadvisethemoncampusdive
聚集是一种()措施。
支持子程序调用的数据结构是()。
最新回复
(
0
)