首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
已知一棵二叉树用二叉链表存储,t指向根节点,P指向树中任一节点。下列算法为输出从t到P之问路径上的节点。 [C程序] #define MaxSize 1000 typedef struct node { TelemType d
已知一棵二叉树用二叉链表存储,t指向根节点,P指向树中任一节点。下列算法为输出从t到P之问路径上的节点。 [C程序] #define MaxSize 1000 typedef struct node { TelemType d
admin
2012-12-10
65
问题
已知一棵二叉树用二叉链表存储,t指向根节点,P指向树中任一节点。下列算法为输出从t到P之问路径上的节点。
[C程序]
#define MaxSize 1000
typedef struct node {
TelemType data ;
struct node *ichiid,*rchiid;
}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->rchiid;
tag[top]=1;
}
}
} (3) ;
top--;topl=0;
while(top>0) {
q=stack[top]; /*反向打印准备*/
topl++;
(4) ;
top--;
}
while( (5) ){ /*打印栈的内容*/
q=stackl[topl]j
printf(q->data);
topl--;
}
}
选项
答案
(1)top++ (2) q=q->lchild (3) while(top>0) (4) stackl[topl]=q (5) topl>0
解析
本题本质上是对二叉树的先序遍历进行考核,但不是简单地进行先序遍历,而是仅遍历从根节点到给定的节点p为止。本题采用非递归算法来实现,其主要思想是:①初始化栈;②根节点进栈,栈不空则循环执行以下步骤直到发现节点p;③当前节点不为空且不为P进栈;④栈顶为p,则结束,否则转③;⑤若右子树访问过,则栈顶的右孩子为当前节点,转③。
扫描左孩子,.当相应的节点不为P时进栈,所以(1)填“top++”,(2)填“q=q->lchild”。在栈不为空时则一直在do while循环中查找,因此(3)填“while(top>0)”。在进行反向打印准备时,读取stack[top]的信息放到stackl[topl]中,即(4)填“stackl[top1]=q”。打印栈中所有内容,所以(5)填“topl>0”。
转载请注明原文地址:https://kaotiyun.com/show/1njZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
某班级有40名学生,本次数学考试大多在80分上下。老师为了快速统计平均分,对每个学生的分数按80分为基准,记录其相对分(多出的分值用正数表示,减少的分值用负数表示,恰巧等于80分时用0表示),再统计出各种相对分的人数,如下表:根据上表可推算出,这次考试
下列关于输入声音时的采样频率和信息储存量的叙述中,正确的是(8)。
以下关于信息化发展的叙述中,不正确的是(2)。
西部某省考试机构工作人员统计了去年下半年三个地区四种资格的报考人数,将统计表抄录如下(其中有一个数据抄错了): 信息处理技术员小王很快就找出了错误的数据,并进行了纠正。错误的数据是(32),该数据应纠正为(33)。33.
人类传播信息的五大类媒体按其出现的先后顺序排列为________。
下列关于计算机病毒的说法中错误的是_______。
据某地区统计,今年中小学生中肥胖学生约占10%,而且,肥胖学生人数正在以8%的速度增长。假设近年中小学生的总量变化不大,据此我们可以推算出,明年该地区中小学生中肥胖学生的比例约为(64)。
职工的“工资级别”与“职工”的联系是__________。
在Excel2007的A1单元格中输入函数“=LEFT(“CHINA”,1)”,按回车键后,则A1单元格中的值为()。
在Word2010文档中,可通过()设置选定内容的行间距。
随机试题
报表由报表页眉、页面页眉等多个部分构成,每一部分称为报表的一个______。
下列有关宪法的特征论述正确的是:()
架设缆索,只能在端部立柱、中间立柱基础的基础强度达到80%以上设计强度时,才准予架设缆索。()
投资建设项目实施的组织模式,包括投资建设项目在实施阶段的()等,在理论和实践中都有多种可能。
海关没收侵权货物的决定送达收发货人后不能按规定时间完成货物处置的,知识产权权利人应当按照货物在海关扣留后的实际存储时间支付仓储、保管和处置等费用。
关于证券公司经营融资融券业务的说法错误的是()。①证券公司经营融资融券业务,应当以自己的名义在商业银行分别开立融资专用资金账户、客户信用交易担保资金账户②证券公司经营融资融券业务,应当以自己的名义在商业银行分别开立融券专用证券账户、
关于组织公民行为的说法,正确的是()。
阅读以下文字。完成下列问题。细胞是人体和其他生物体的基本结构与功能单位。细胞膜将细胞内液和细胞外液分隔开来,使细胞独立于外部环境的变化而保持相对稳定的状态。维持内环境处于稳定状态是机体执行正常生理功能的必要条件,而这种状态的维持有赖于细胞内、外离
Doyouwakeupeverydayfeelingtootired,orevenupset?Ifso,thenanewalarmclockcouldbejustforyou.Theclock,c
WhyareAmericanbillsorpapermoneyunlikethatinmanyothercountries?
最新回复
(
0
)