首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列程序说明和C程序,把应填入其中(n)处的字句,写在对应栏内。 【程序说明】 已知某二叉树的前序遍历和中序遍历序列,可以得到该二叉树的结构。本程序实现了根据这两个遍历序列生成一棵链接表示的二叉树。 构造二叉树的算法要点是:由前序遍历序
阅读下列程序说明和C程序,把应填入其中(n)处的字句,写在对应栏内。 【程序说明】 已知某二叉树的前序遍历和中序遍历序列,可以得到该二叉树的结构。本程序实现了根据这两个遍历序列生成一棵链接表示的二叉树。 构造二叉树的算法要点是:由前序遍历序
admin
2009-05-15
27
问题
阅读下列程序说明和C程序,把应填入其中(n)处的字句,写在对应栏内。
【程序说明】
已知某二叉树的前序遍历和中序遍历序列,可以得到该二叉树的结构。本程序实现了根据这两个遍历序列生成一棵链接表示的二叉树。
构造二叉树的算法要点是:由前序遍历序列,该序列的第一个元素是根结点元素。该元素将中序遍历序列分成左、右两部分,那些位于该元素之前的元素是它的左子树上的元素,位于该元素之后的元素是它的右子树上的元素。对于左、右子树,由它们的前序遍历序列的第一个元素可确定左、右子树的根结点,参照中序遍历序列又可进一步确定子树的左、右子树元素。如此递归地参照两个遍历序列,最终构造出二叉树。
两个遍历序列作为主函数main()的参数。为简单起见,程序假定两个遍历序列是相容的。主函数调用函数restore()建立二叉树。函数restore()以树(子树)的前序遍历和中序遍历两序列及序列长为参数,采用递归方法建立树(子树)。函数postorder()实现二叉树的后序遍历序列输出,用来验证函数restore()建立的二叉树。
【程序】
#include(stdio.h>
#include<stdlib.h>
#define MAX 100
typedef struct node{
char data;
struet node * llink,*rlink;
}TNODE;
charpred[MAX],inod[MAX];
TNODE * restore (Char*,char*,int);
main(int argc,Char* *argv)
{
TNODE * root;
if(argc<3)exit(0);
strcpy(pred,argv[1]);
strcpy(inod,argv[2]);
root=restore(pred,inod,strlen(pred))postorder(root);
printf("\n\n");
}
TNODE * restore(Char * ppos,char * ipos,int n)
{ /*参数包括前序遍历序列数组和中序遍历数组*/
TNODE * ptr;
Char * rpos;
int k;
if(n <=0)return NULL;
ptr= (TNODE *)malloc(sizeof(TNODE));
ptr→data=(1);
for (2) rpos=ipos;rpos <ipos+n;rpos++ )
if(*rpos== * ppos)break;
k =(3);
ptr→llink = restore(ppos+1, (4),k);
ptr→rlink = restore (5) + k,rpos + 1,n-1-k);
return ptr;
}
postorder(TNODE *ptr)
{ if(ptr==NULL)return;
postorder(ptr→llink);
postorder(ptr→rlink);
prinft("%c",ptr→data);
}
选项
答案
(1)*ppos或ppos[0]
解析
将新建结点的值初始化为前序遍历的第一个结点,即当前树的根结点。
转载请注明原文地址:https://kaotiyun.com/show/kujZ777K
本试题收录于:
程序员上午基础知识考试题库软考初级分类
0
程序员上午基础知识考试
软考初级
相关试题推荐
连接交换机与工作站的传输介质是什么?介质需要做成直通线还是交叉线?最大长度限制为多少?若工作站A访问外部Web服务器,发往Internet的IP包经由(1)和(2)处时源IP地址分别是什么?
阅读下列说明,根据网页显示的效果图,回答问题1至问题3。[说明]某咨询公司对外提供行业研究报告,其客户分为银卡、金卡及VIP客户,行业研究报告级别分为A、B和C三类,分别对应VIP、金卡及银卡权限。行业研究报告访问权限定义如下:不同级别用户
阅读以下说明,回答下列问题,将解答填入答题纸对应的解答栏内。【说明】某单位网络结构如图2—1所示,该公司设有DNS服务器和Web服务器。网站信息如表2—1所示,要求用户能够通过在浏览器地址栏中输入https://ww
阅读以下说明,回答问题1至问题5,将解答填入答题纸对应的解答栏内。【说明】某公司使用ASP开发商务网站,网页制作过程使用了CSS技术,该网站具有商品介绍、会员管理、在线支付和物流管理等功能,采用SQLServer数据库,数据库名称为business,
某网站设计了一个留言系统,能够记录留言者的姓名、IP地址及留言时间。撰写留言页面如图4-1所示,表4-1为利用MicrosoftAccess创建的数据库lyb。图4-2是留言信息显示页面,系统按照ID值从大到小的顺序依次显示留言信息,单击图4-1“
阅读以下说明,回答问题。【说明】某公司A楼高40层,每层高3.3m,同一楼层内任意两个房间最远传输距离不超过90m,A楼和B楼之间距离为500m,需在整个大楼进行综合布线,其结构如图l一23所示。为满足公司业务发展的需要,要求
下列标准代号中,(12)是国家标准的代号。
安全单向散列函数不具备的特征是(62)。
我国软件著作权受法律保护的期限是(20)。一旦保护期限届满,权利自行终止,成为社会公众可以自由使用的知识。
多媒体制作公司甲擅自将工程师乙发表在《计算机应用》上的系列文章《多媒体制作技术与方法》制作成光盘,则甲(51)。
随机试题
女,24岁。产前检查发现尿糖(+),血糖7.2mmol/L,葡萄糖耐量试验减低,不伴有“三多一少”症状可能的诊断是
患者,患肺痨7年,咳嗽无力、声低懒言,痰中夹血,血色淡红,午后低热,面色咣白,颧红盗汗。舌嫩红有齿痕,苔薄白,脉细弱数。如下哪项调养是错误的
如图所示的周期为丁的三角波信号,在用傅氏级数分析周期信号时,系数a0、an和bn判断正确的是:
计算机高级语言编写的程序编译成机器语言程序后即可被计算机执行。 ( )
依据《中华人民共和国审计法》,以下哪个单位不需要审汁机关有计划地定期审计?()
2010年,吉林省全年完成全社会固定资产投资9621.77亿元,比上年增长32.5%,人均投资达到35381元。其中,城镇投资7925.72亿元,增长33.0%;农村投资1696.05亿元,增长30.4%。在城镇固定资产投资中,第一产业完成投资1
根据所给资料。回答106—110题。2011年甲省高新技术产业实现工业总产值6622.2亿元,同比增长37.4%,是2006年的4.9倍。高新技术产业总产值占全部规模以上工业总产值的比重达到21.3%,较上年提高0.4个百分点,比2006年提高4
只有在选民是道德而又明智的时候,一个民主政体才能良好地运转。以下哪项能从上述主张中合乎逻辑地推导出来?
A、GarbagefromfoodB、Oldears.C、Emptybottles.D、Bottleglass.D文中可听到:Butbottleglasscanbegroundintosandandusedtopav
Recentresearchhasclaimedthatanexcessofpositiveionsintheaircanhaveanilleffectonpeople’sphysicalorpsycholog
最新回复
(
0
)