首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下函数说明和C语言函数,将应填入(n)处的字句写在对应栏内。 [说明] 已知一棵二叉树用二叉链表存储,t指向根结点,p指向树中任一结点。下列算法为输出从t到P之间路径上的结点。 [C程序] #define Maxsiz
阅读以下函数说明和C语言函数,将应填入(n)处的字句写在对应栏内。 [说明] 已知一棵二叉树用二叉链表存储,t指向根结点,p指向树中任一结点。下列算法为输出从t到P之间路径上的结点。 [C程序] #define Maxsiz
admin
2010-12-16
46
问题
阅读以下函数说明和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
程序员下午应用技术考试
软考初级
相关试题推荐
纸张与()是使用喷墨打印机所需的消耗品。
数据分析经常需要把复杂的数据分组,并选取代表,将大量数据压缩或合并得到一个较小的数据集。这个过程称为()。
下列关于输入声音时的采样频率和信息储存量的叙述中,正确的是(8)。
在Word2007中,为使内容更加醒目,文章更具有条理性,可在若干段落前面添加__________。
假设在Access中已经建立了“学生”表,表中包括“学号”、“姓名”、“性别”和“班级”等字段,如果要统计出每个班级的人数,那么在查询设计视图的“班级”的“总计”行和“学号”的“总计”行中应分别选择(65)。
WindowsXP中,被删除的文件默认存放在()中,需要时还可以进行恢复。
在Excel中,若A1单元格中的内容为“全国计算机技术与软件专业技术资格(水平)考试”,在A2单元格中输入函数=LEFT(A1,2),则A2单元格显示的内容是______。
在Excel中,下列符号属于比较运算符的是(43)。
据某地区统计,今年中小学生中肥胖学生约占10%,而且,肥胖学生人数正在以8%的速度增长。假设近年中小学生的总量变化不大,据此我们可以推算出,明年该地区中小学生中肥胖学生的比例约为(64)。
许多书上都说,人一次只能记住或处理5~9(7±2)条信息。为了检验这个结论是否正确,宜采用()调查方法。经过多次调查统计研究发现,人一次平均只能记住或处理4条信息。经考证,原来7±2的说法只是一位专家在一个讲演稿中的估计,并不是真正的调研报告,但却
随机试题
病人发热胸闷,口噤(作图)齿,项背强直,甚至角弓反张,手足挛急,腹胀便秘,咽干口渴,心烦急躁,甚则神昏谵语,苔黄腻,脉弦数,应属痉证中哪一证候
A.碳酸钙结石B.尿酸结石C.黄嘌呤结石D.磷酸盐结石E.胱氨酸结石主要特点是长期尿路感染引起的结石为
糖尿病不宜嗜铬细胞瘤
患儿,男,4岁,突发全身抽搐,意识丧失,口吐白沫,无发热,随后呈昏睡状,脑膜刺激征阴性,为明确诊断应更好的选择的检查是
混凝土粗骨料当以超、逊径筛检验时,其控制标准为:超径为0,逊径小于()。
根据企业所得税法的规定,下列关于企业转让限售股说法中不正确的是()。
薪酬管理的原则是一个企业给员工传递信息的重要渠道,体现了()。(2003年8月三级真题)
SomeAfricanAmericanshavehadaprofoundimpactonAmericansociety,changingmanypeople’sviewsonrace,historyandpolitic
"Iamnotmeddling."Marysaidmildly,"I’mjustcurious."
WhooutlinedtheblueprinttoendtheviolenceinMid-east?
最新回复
(
0
)