首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列程序说明和C程序,把应填入其中(n)处的字句,写在对应栏内。 【程序说明】 已知某二叉树的前序遍历和中序遍历序列,可以得到该二叉树的结构。本程序实现了根据这两个遍历序列生成一棵链接表示的二叉树。 构造二叉树的算法要点是:由前序遍历序
阅读下列程序说明和C程序,把应填入其中(n)处的字句,写在对应栏内。 【程序说明】 已知某二叉树的前序遍历和中序遍历序列,可以得到该二叉树的结构。本程序实现了根据这两个遍历序列生成一棵链接表示的二叉树。 构造二叉树的算法要点是:由前序遍历序
admin
2009-05-15
44
问题
阅读下列程序说明和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
程序员上午基础知识考试
软考初级
相关试题推荐
根据图6-14网页的显示效果图,请将index01.asp文件中(1)~(7)空缺处的内容填写完整。在ASP中,(13)是session对象的方法。(13)A.LockB.CreateObjectC.AbandonD
从图13-1可以看出,代理服务器将网络分成哪两部分?以下是LAN上的客户机希望访问Internet时的工作过程,但顺序已乱,请重新排序。(1)Web服务器将文件传给WinGate服务器(2)WinGate服务器解释这个请求,如果这个请求
连接交换机与工作站的传输介质是什么?介质需要做成直通线还是交叉线?最大长度限制为多少?若工作站A访问外部Web服务器,发往Internet的IP包经由(1)和(2)处时源IP地址分别是什么?
阅读以下说明,回答问题。[说明]在一台计算机上安装完成WindowsServer2003服务器及相应的服务组件。有一个子网,子网掩码是255.255.255.252,该子网的最后一个可用地址是192.168.200.126,则这个子
某公司规模扩大,既要考虑保证目前土建装修的效果不被破坏,又要满足网络扩容和企业工作的实际需求,同时还要保证投资不要过大,经过深入分析和研究对比,决定采用无线局域网组网来解决网络扩容的问题,网络拓扑如下图所示。从工作的频段、数据传输速率、优缺点以及它们
阅读以下说明,回答下列问题,将解答填入答题纸对应的解答栏内。【说明】某实验室的网络拓扑结构如图3一1所示,内部网有4个部门,要求相互之间不能通过网上邻居访问,但可以通过IP地址互相访问,SW1为三层交换机。内部网全部使用私有IP地址。现
A programmer must know about a function’s(74)to Call it correctly.
在关系代数运算中,若对表1按(15),可以得到表2。
在Excel中,通过冻结或者拆分窗格可以在滚动工作表时始终保持部分数据可见。下图中(16),当鼠标指针在上述位置变为(17)后,将该框拖至所需的位置即可。
安全单向散列函数不具备的特征是(62)。
随机试题
在含有AgCl沉淀的溶液中,加入NH3.H2O,则AgCl沉淀会溶解。()
妊娠晚期每周体重增加不应超过()
在诉讼时效期间的最后6个月内发生______情况的,诉讼时效中止。
2018年年初某公司“盈余公积”余额为120万元,当年实现利润总额900万元,所得税费用300万元,按净利润的10%提取法定盈余公积,经股东大会批准将盈余公积50万元转增资本,2018年12月31日,该公司资产负债表中“盈余公积”项目年末余额为()
论述配送需求计划(DRP)的好处。
关于我国的国防建设,下列说法不正确的是()。
(2017国考)2015年我国钟表全行业实现工业总产值约675亿元,同比增长3.2%,增速比上年同期提高1.7个百分点。全行业全年生产手表10.7亿只,同比增长3.9%,完成产值约417亿元,同比增长4.3%,增速提高1.9个百分点;生产时钟(含钟芯)5
张某被人民法院判处没收财产,这是一种()。
Thousandsofpeopleareneedlessly______eachyearinroadaccidents.
A、2:30a.m.tomorrow.B、1:30a.m.thedayaftertomorrow.C、1:00a.m.thedayaftertomorrow.D、1:30a.m.tomorrow.C时间数字题。对话开始女
最新回复
(
0
)