首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列程序说明和C程序,把应填入其中(n)处的字句,写在对应栏内。 【程序说明】 已知某二叉树的前序遍历和中序遍历序列,可以得到该二叉树的结构。本程序实现了根据这两个遍历序列生成一棵链接表示的二叉树。 构造二叉树的算法要点是:由前序遍历序
阅读下列程序说明和C程序,把应填入其中(n)处的字句,写在对应栏内。 【程序说明】 已知某二叉树的前序遍历和中序遍历序列,可以得到该二叉树的结构。本程序实现了根据这两个遍历序列生成一棵链接表示的二叉树。 构造二叉树的算法要点是:由前序遍历序
admin
2009-05-15
36
问题
阅读下列程序说明和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);
}
选项
答案
(5)ppos+1
解析
这里对右子树进行递归调用方法restore,右子树的前序遍历序列从ppos+1+k开始。
转载请注明原文地址:https://kaotiyun.com/show/RujZ777K
本试题收录于:
程序员上午基础知识考试题库软考初级分类
0
程序员上午基础知识考试
软考初级
相关试题推荐
阅读下列说明,根据网页显示的效果图,回答问题1至问题3。[说明]某咨询公司对外提供行业研究报告,其客户分为银卡、金卡及VIP客户,行业研究报告级别分为A、B和C三类,分别对应VIP、金卡及银卡权限。行业研究报告访问权限定义如下:不同级别用户
为了支持SNMP协议的管理功能,在基于WindowsServer2003操作系统的网络管理站中,需要进行哪些配置工作?对于图6-7所显示的系统输出信息,命令“snmputilwalk10.1.101.49public1”的作用是遍历被管理对
阅读以下说明,回答下列问题,将解答填入答题纸对应的解答栏内。【说明】某公司网络有200台主机、一台WebSever和一台MailSever。为了保障网络安全,安装了一款防火墙,其网络结构如图4-1所示,防火墙上配置NAT转换规则如表4-1所示。
阅读以下说明,回答下列问题,将解答填入答题纸对应的解答栏内。【说明】某单位使用IIS建立了自己的FTP服务器,图2—1是IIS中“默认FTP站点属性”的配置界面。建立FTP服务器时,根据需求制定了如下策略:FTP站点允许匿
阅读以下说明,回答问题1至问题5,将解答填入答题纸对应的解答栏内。【说明】某公司使用ASP开发商务网站,网页制作过程使用了CSS技术,该网站具有商品介绍、会员管理、在线支付和物流管理等功能,采用SQLServer数据库,数据库名称为business,
阅读以下说明,回答问题1至问题5,将解答填入答题纸对应的解答栏内。【说明】某公司使用ASP开发商务网站,网页制作过程使用了CSS技术,该网站具有商品介绍、会员管理、在线支付和物流管理等功能,采用SQLServer数据库,数据库名称为business,
A(66)computer is a personal computer whose hardware is capable of using any or all 0f the following media in a program:audio,tex
计算机病毒是(39)。特洛伊木马一般分为服务器端和客户端,如果攻击主机为 A,目标主机为B,则(40)。
Password is a secret series of(69)that enables a user to access a file, computer, or program. On multi-user systems, each user m
通常计算机的存储器是一个由Cache、主存和辅存构成的3级存储系统。辅助存储器一般可由磁盘、磁带和光盘等存储设备组成。Cache和主存一般是一种(11)存储器。在各种辅存中,除了(12)外,大多是便于脱卸和携带的。Cache存储器一般采用(13)半导体芯片
随机试题
中小学智育的根本任务是()
从编制合并财务报表的角度看,集团内部存货交易存在几种类型?指出各种类型内部利润的抵消方法。
在起重设备上的绕线式异步电动机常采用的起动方式是()。
土方施工中,对开槽范围内各种障碍物的保护措施应符合的规定不包括()。
证券交易所主要的交易规则包括()。
保险公司应当在划扣首期保费()小时内,或未划扣首期保费的在承保()小时内,以保险公司名义,通过手机短信、微信、电子邮件等方式,提示投保人。
公民的利害关系人可以向法院申请宣告公民死亡的情形有()。
2014年—2018年,我国软件产品这一子行业收入的环比增速最高的年份是:
下列对IPv6地址FF23:0:0:0:0510:0:0:9C5B的简化表示中,错误的是()。
阐述在侵权诉讼中被告的一般抗辩。(1986年4月)
最新回复
(
0
)