首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列程序说明和C程序,把应填入其中(n)处的字句,写在对应栏内。 【程序说明】 已知某二叉树的前序遍历和中序遍历序列,可以得到该二叉树的结构。本程序实现了根据这两个遍历序列生成一棵链接表示的二叉树。 构造二叉树的算法要点是:由前序遍历序
阅读下列程序说明和C程序,把应填入其中(n)处的字句,写在对应栏内。 【程序说明】 已知某二叉树的前序遍历和中序遍历序列,可以得到该二叉树的结构。本程序实现了根据这两个遍历序列生成一棵链接表示的二叉树。 构造二叉树的算法要点是:由前序遍历序
admin
2009-05-15
40
问题
阅读下列程序说明和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
程序员上午基础知识考试
软考初级
相关试题推荐
在Linux下安装sendmail服务,sendmail服务程序需要读取一些配置文件,以下是sendmail的几个配置文件的主要内容。[/etc/sendmail.cf文件片断]CwlocalhostFw/etc/mail/loca
阅读以下说明,回答问题。[说明]在一台计算机上安装完成WindowsServer2003服务器及相应的服务组件。有一个子网,子网掩码是255.255.255.252,该子网的最后一个可用地址是192.168.200.126,则这个子
阅读下列说明,回答下列问题,将解答填入答题纸对应栏内。【说明】某论坛采用ASP+Access开发,刚网站域名为www.bbstd.cn,其主页如图4—1所示:以下是该网站部分数据库代码,请根据题目说明完成改程序,将答案填写
阅读以下说明,回答下列问题,将解答填入答题纸对应的解答栏内。【说明】某企业采用PIX防火墙保护公司网络安全,网络结构如图4—1所示。编写表4—1的规则,设置防火墙的安全规则,允许外网主机133.20.10.10访问内网的数
试题一阅读以下说明,回答【问题1】至【问题5】,将解答填入答题纸对应的答题栏内。【说明】某网站拓扑结构如图1-1所示,用户由DHCP服务器分配IP地址,FTP服务器的操作系统为WindowsServer2003,个服务器的
阅读以下说明,回答问题。【说明】某单位网络拓扑结构如图2一1所示,FTP服务器的域名为xhftp.SoftwareExam.com。依据图2一2配置好FTP服务器后,其数据端口为(5)。若尚未配置域名记录,在浏览器中可输入URL(6)来访
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
在下列存储管理方案中,(16)是解决内存碎片问题的有效方法。虚拟存储器主要由(17)组成。
下列选项中,防范网络监听最有效的方法是(48)。
设机罪码的长度为8位,已知X、Z为带符号的纯整数,Y为带符号的纯小数,[X]原+[Y]补+[Z]移=11111111,求出X、Y、Z的十进制真值为:X=(16),Y=(17),Z=(18)。
随机试题
呕血还是便血取决于出血部位的高低,出血的速度和出血量是次要的。
局部麻醉用丁卡因1次,手术用量不得超过
儿童第一恒磨牙龋发生最早,患龋率最高,为了预防龋齿发生,临床上应
患者,女性,25岁。消瘦,双侧小腿伸侧皮下疼痛性结节2周。不易破溃,站立或活动后症状加重,病程中伴有发热、肌痛和关节疼痛。血常规提示WBC12×109/L、N80%、L10%、Hb110g/L,PLT210×109/L;尿常规正常;ESR35m
下列哪项不是正常上唇的特点
按()不同,新技术、新工艺和新材料可分为事前和事后进行的技术经济分析、设计阶段和施工阶段进行的技术经济分析。
法官唐某向检察院举报了人事局局长邹某收取钱物的行为,唐某的行为属于()。(2012年单选12)
平面yOz上的曲线z=y2+1绕Oz轴旋转一周的曲面方程是________.
Readthefollowingarticleandchoosethebestwordforeachspace.Forquestions26~45,markoneletterA,B,CorDonyou
Whena13-year-oldVirginiagirlstartedsneezing,herparentsthoughtitwasmerelyacold.Butwhenthesneezescontinuedfor
最新回复
(
0
)