首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下函数说明和C语言函数,将应填入(n)处的字句写在对应栏内。 [说明] 已知一棵二叉树用二叉链表存储,t指向根结点,p指向树中任一结点。下列算法为输出从t到P之间路径上的结点。 [C程序] #define Maxsiz
阅读以下函数说明和C语言函数,将应填入(n)处的字句写在对应栏内。 [说明] 已知一棵二叉树用二叉链表存储,t指向根结点,p指向树中任一结点。下列算法为输出从t到P之间路径上的结点。 [C程序] #define Maxsiz
admin
2010-12-16
62
问题
阅读以下函数说明和C语言函数,将应填入(n)处的字句写在对应栏内。
[说明]
已知一棵二叉树用二叉链表存储,t指向根结点,p指向树中任一结点。下列算法为输出从t到P之间路径上的结点。
[C程序]
#define Maxsize 1000
typedef struct node{
TelemType data;
struct node*1child,*rchild;
}BiNode,*BiTree;
void Path(BiTree t,BiNode*P)
{ BiTree*stack[Maxsize],*stackl[Maxsize],*q;
int tag[Maxsize],top=0,topl;
q=t;
/*通过先序遍历发现P*/
do(while(q!=NULL && q!=p)
/*扫描左孩子,且相应的结点不为P*/
{ (1);
stack[top]=q;
tag[top]=0;
(2);
}
if(top>0)
{ if(stack[top]==P) break; /*找到P,栈底到栈顶为t到P*/
if(tag[top]==1)top--;
else{q=stack[top];
q=q->rchild;
tag[top]=1;
}
}
} (3);
top--; topl=0;
while(top>0){
q=stack[top]; /*反向打印准备*/
topl++;
(4);
top--;
}
while((5)){ /*打印栈的内容*/
q=stackl[topl];
printf(q->data);
topl--;
}
}
选项
答案
(1) top++ (2) q=q->1child (3) while(top>0) (4) stackl[top1]=q (5) top1>0
解析
本题本质上是对二叉树的先序遍历进行考核,但不是简单地进行先序遍历,而是仅遍历从根结点到给定的结点p为止。本题采用非递归算法来实现,其主要思想是:①初始化栈:②根结点进栈,栈不空则循环执行以下步骤直到发现结点p;③当前结点不为空且不为P进栈;④栈顶为p,则结束,否则转③;⑤若右子树访问过,则栈顶的右孩子为当前结点,转③。
扫描左孩子,当相应的结点不为P时进栈,所以(1)填“top++”,(2)填“q=q->1child”。在栈不为空时则一直在do while循环中查找,因此(3)填“while(top>0)”。在进行反向打印准备时,读取stack[top]的信息放到stackl[top]中,即(4)填“stackl[top1]=q”。打印栈中所有内容,所以(5)填“top1>0”。
转载请注明原文地址:https://kaotiyun.com/show/I6jZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
将四个元素a,b,c,d分成非空的两组,不计组内顺序和组间顺序,共有()种分组方法。
在Windows7中,磁盘文件类型可以根据______来识别。
在Excel2007中,在单元格A1中输入函数“=POWER(2,3)/MAX(1,2,4)”,按回车键后,则A1单元格中的值为__________。
为在复写纸上打印三联单,宜用________打印机。
以下关于计算机网络协议的叙述中,不正确的是(58)________________。
在Excel中,设单元格A1中的值为100,B1中的值为200,A2中的值为300,B2中的值为400,若在A3单元格中输入函数“=SUM(A1:B2)”,按回车键后,A3单元格中的值为()。
甲、乙两队同时开凿一条640米长的隧道。甲队从一端起,每天掘进7米;乙队从另一端起,每天比甲队多掘进2米,两队在距离隧道中点(30)米的地方会合。
许多书上都说,人一次只能记住或处理5~9(7±2)条信息。为了检验这个结论是否正确,宜采用()调查方法。经过多次调查统计研究发现,人一次平均只能记住或处理4条信息。经考证,原来7±2的说法只是一位专家在一个讲演稿中的估计,并不是真正的调研报告,但却
随机试题
初级卵母细胞在排卵前才完成第一次成熟分裂。()
低蛋白血症所致水肿多为
治疗肺心病心力衰竭的首要措施是
某企业2002年1月1日的房产原值为3000万元,4月1日将其中原值为1000万元的临街房出租给某连锁商店,月租金5万元。当地政府规定允许按房产原值减除20%后的余值计税。该企业当年应缴纳房产税()。
生产过程中需要监视维护的重要场所宜用逐点计算法校验其照度值,重要场所包括()。
建筑产品生产的单件性要求每一个建筑产品都要根据其特定的要求进行施工,其表现包括()。
企业所得税法所称小型微利企业,除了不能从事国家限制和禁止的行业之外,还需要符合的条件是()。
甲、乙、丙、丁、戊、庚六人对一台挖掘机按份共有,甲的份额是2/3.其余五人的份额各为1/15。根据物权法律制度的规定,没有特别约定时,下列转让挖掘机的行为中,有效的有()。(2015年)
根据学习的定义,下列属于学习的现象是()。
根据下面材料回答下列问题。2014年我国对美国的双边贸易额比2013年增长()。
最新回复
(
0
)