首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列程序说明和C程序,把应填入其中(n)处的字句,写在对应栏内。 【程序说明】 已知某二叉树的前序遍历和中序遍历序列,可以得到该二叉树的结构。本程序实现了根据这两个遍历序列生成一棵链接表示的二叉树。 构造二叉树的算法要点是:由前序遍历序
阅读下列程序说明和C程序,把应填入其中(n)处的字句,写在对应栏内。 【程序说明】 已知某二叉树的前序遍历和中序遍历序列,可以得到该二叉树的结构。本程序实现了根据这两个遍历序列生成一棵链接表示的二叉树。 构造二叉树的算法要点是:由前序遍历序
admin
2009-05-15
77
问题
阅读下列程序说明和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);
}
选项
答案
(3)rpos-ipos
解析
相减得到左子树的结点数。
转载请注明原文地址:https://kaotiyun.com/show/3ujZ777K
本试题收录于:
程序员上午基础知识考试题库软考初级分类
0
程序员上午基础知识考试
软考初级
相关试题推荐
请根据表11-1中的选项,把(1)~(5)填写完整。在Linux系统中有如下3个语句,请分别说出他们所执行的任务名称。(1)/etc/rc.d/init.d/dhcpdstart(2)/etc/rc.d/init.d/dhcpdst
连接交换机与工作站的传输介质是什么?介质需要做成直通线还是交叉线?最大长度限制为多少?交换机1和交换机2之间相距20米,是采用交换机堆叠方式还是交换机级联方式?
某公司规模扩大,既要考虑保证目前土建装修的效果不被破坏,又要满足网络扩容和企业工作的实际需求,同时还要保证投资不要过大,经过深入分析和研究对比,决定采用无线局域网组网来解决网络扩容的问题,网络拓扑如下图所示。从工作的频段、数据传输速率、优缺点以及它们
阅读以下说明,回答下列问题,将解答填入答题纸对应的解答栏内。【说明】某单位使用IIS建立了自己的FTP服务器,图2—1是IIS中“默认FTP站点属性”的配置界面。建立FTP服务器时,根据需求制定了如下策略:FTP站点允许匿
阅读以下说明,回答以下问题,将解答填入答题纸对应的解答栏内。【说明】某企业网络拓扑结构如图2.1所示,通过WindowsServer2003系统搭建了Web、DNS、DHCP和邮件服务器(为内网用户提供服务),其中DHCP服务器分配的地址范围如图2.
阅读以下说明,回答问题1至问题5,将解答填入答题纸对应的解答栏内。【说明】某公司使用ASP开发商务网站,网页制作过程使用了CSS技术,该网站具有商品介绍、会员管理、在线支付和物流管理等功能,采用SQLServer数据库,数据库名称为business,
阅读以下说明,回答问题1~问题3,将解答填入答题纸对应的解答栏内。(2007年11月下午试题三)【说明】应用FTP在两台计算机之间传输文件,一台计算机作为FTP客户端,安装FTP客户端软件(或操作系统自带);另一台作为.FTP服务器,安
Windows系统安装时生成的Documents and Settings、Winnt和System32文件夹是不能随意更改的,因为它们是(16)。在Windows文件系统中,(17)是一个合法的文件名;(18)不是合法的可执行文件的扩展名。
多媒体制作公司甲擅自将工程师乙发表在《计算机应用》上的系列文章《多媒体制作技术与方法》制作成光盘,则甲(51)。
某计算机系统中,16位浮点数的表示格式如图6-1所示。其中,阶码4位(含1位符号)为定点整数,尾数12位(含1位符号)为定点小数。设一个数机器码为1110001010000000,若阶码为移码且尾数为原码,则其十进制数真值为(1)。
随机试题
面板和机壳的除尘一般先用()或()两种方法进行初步除尘,在喷涂室内还要用()对面板,机壳进行吹扫,进行二次除尘。
A、肝脓肿B、脾肿大C、胃肠胀气D、坏死性肝炎E、胆囊炎肝浊音界缩小见于()
类风湿因子
治疗药物的有效性评价方法
病人应首先查此时的治疗原则为
关于流行性乙型脑炎的传染源猪,下列叙述哪项是错误的
A公司如何才能合法使用该片土地()。A公司进行商品房预售应具备的条件包括()。
水土流失预测中,通用水土流失方程式A=R·K·L·S·C·P,式中,A表示()。
对于比较复杂和抽象的教学内容,教师运用文字、线条和关系框图来进行板书设计,这属于()。
ResearchersledbyNewYorkUniversityneuroscientistJosephLeDouxrecentlyclaimedtobethefirstscientiststoeraseasingl
最新回复
(
0
)