首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列程序说明和C程序,把应填入其中(n)处的字句,写在对应栏内。 【程序说明】 已知某二叉树的前序遍历和中序遍历序列,可以得到该二叉树的结构。本程序实现了根据这两个遍历序列生成一棵链接表示的二叉树。 构造二叉树的算法要点是:由前序遍历序
阅读下列程序说明和C程序,把应填入其中(n)处的字句,写在对应栏内。 【程序说明】 已知某二叉树的前序遍历和中序遍历序列,可以得到该二叉树的结构。本程序实现了根据这两个遍历序列生成一棵链接表示的二叉树。 构造二叉树的算法要点是:由前序遍历序
admin
2009-05-15
61
问题
阅读下列程序说明和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
程序员上午基础知识考试
软考初级
相关试题推荐
阅读以下说明,回答下列问题,将解答填入答题纸对应的解答栏内。【说明】某公司网络有200台主机、一台WebSever和一台MailSever。为了保障网络安全,安装了一款防火墙,其网络结构如图4-1所示,防火墙上配置NAT转换规则如表4-1所示。
阅读以下说明,回答下列问题,将解答填入答题纸对应的解答栏内。【说明】某公司网络有200台主机、一台WebSever和一台MailSever。为了保障网络安全,安装了一款防火墙,其网络结构如图4-1所示,防火墙上配置NAT转换规则如表4-1所示。
试题二阅读以下说明,回答【问题1】至【问题4】,将解答填入对应的解答栏内。【说明】某单位网络结构及各接口IP地址如图2-1所示,路由器R1的路由表结构及外部网络访问内网的路由记录如表2-1所示。【问题2】填充表2-2,
Very long,complex expressions in program are difficult to write correctly and difficultto(68).
假设用12个二进制位表示数据。它能表示的最大无符号整数为(8);若采用原码,它能表示的最小负整数为(9)。
在下列存储管理方案中,(16)是解决内存碎片问题的有效方法。虚拟存储器主要由(17)组成。
若用8位机器码表示十进制数-101,则原码表示的形式为(8);补码表示的形式为(9)。
“冲击波”病毒属于(47)类型的病毒,它利用Windows操作系统的(48)漏洞进行快速传播。
由6个字符的7位ASCⅡ编码排列,再加上水平垂直奇偶校验位构成下列矩阵(最后一列为水平奇偶校验位,最后一行为垂直奇偶校验位)。 字符: 3 0 X1 X2 0 0 1 1 0 I 1
IPv6是下一代IP协议,其基本报头中的(70)字段指明了一个特定的信源向某个特定信宿发送的分组序列,各个中间路由器要对该分组序列进行特殊处理以满足应用程序的特殊传输需求。
随机试题
按照世界卫生组织规定的牙位记录方法,53代表的是
百日咳隔离期为
A.风B.寒C.燥D.暑E.火其性炎热而易致肿疡的邪气是
患者,女性,68岁。患慢性肺心病6年,今日咳嗽咳痰加重,发绀明显,给予半坐位的主要目的是
对施工用电、脚手架、龙门架、爆破、吊装、水下土方、支模、拆除等特殊工程,按规范标准达到要求的必须编制单项安全技术方案,并要有设计依据,可不附计算、详图及文字要求()
某拟建高速公路桥梁位于蓄洪区内,其()报告报请批准时,应当附具有关水行政主管部门审查批准的洪水影响评价报告。
“一俊遮百丑”“一坏百坏”等观点体现了()。
学生是人,是教育的对象,因而他们()①消极被动地接受教育②对外界的教育影响有选择性③毫无顾忌地接受教育④能动地接受教育
下列排序算法中,在每一趟都能选出一个元素放到其最终位置上,并且其时间性能受数据初始特性影响的是()。
A、Self-cateringaccommodationisveryfarfromtheuniversity.B、Ifastudentwantsaprivateaccommodation,hemaycalltheStu
最新回复
(
0
)