首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请认真阅读以下函数说明、图及C程序,将程序段中(1)~(7)空缺处的语句填写完整。 [说明] 一般的树结构常采用孩子—兄弟表示法表示,即用二叉链表做树的存储结构,链表中节点的两个链域分别指向该节点的第一个孩子节点和下一个兄弟节点。例如,如图1
请认真阅读以下函数说明、图及C程序,将程序段中(1)~(7)空缺处的语句填写完整。 [说明] 一般的树结构常采用孩子—兄弟表示法表示,即用二叉链表做树的存储结构,链表中节点的两个链域分别指向该节点的第一个孩子节点和下一个兄弟节点。例如,如图1
admin
2010-01-15
44
问题
请认真阅读以下函数说明、图及C程序,将程序段中(1)~(7)空缺处的语句填写完整。
[说明]
一般的树结构常采用孩子—兄弟表示法表示,即用二叉链表做树的存储结构,链表中节点的两个链域分别指向该节点的第一个孩子节点和下一个兄弟节点。例如,如图1-15(a)所示树的孩子—兄弟表示如图1-15(b)所示。
函数LevelTraverse()的功能是对给定树进行层序遍历。例如,对如图1-15所示的树进行层序遍历时,节点的访问次序为D B A E F P C。
对树进行层序遍历时使用了队列结构,实现队列基本操作的函数原型如表1-11所示。
Bool、Status类型定义如下:
树的二叉链表节点定义如下:
[C函数程序]
选项
答案
这是一道要求读者掌握树结构的存储及遍历运算的程序分析题。本试题的解答思路如下。 队列可以保证访问节点时按照层次和自左至右的顺序。借助队列结构对树进行层序遍历时,每个节点都进出队列一次,节点出队列时进行访问。其过程是,首先令树根节点入队,若是森林(树根之间互为兄弟),接着则令其余树的根节点入队,然后在队列非空的情况下,队头节点出队,访问该节点同时令其孩子节点入队。以此类推,直到队列为空。 在试题所给出的[C函数程序]中,代码“InitQueue(&tempQ); (1) ;”完成初始化队列并令根节点入队列的功能,因此(1)空缺处所填写的内容是“EnQueue(&tempQ, root)”。 采用二叉树存储树结构时,其右分支表示兄弟关系,因此队头节点出队时,应沿右分支将队头节点的所有孩子依次加入队列。(2)空缺处所在的while循环完成处理第一棵树的兄弟节点的功能,因此,(2)空缺处所填写的内容是“brotherptr=brotherptr->nextbrother”。至此,就完成了第一层节点的处理。 (3)空缺处用于判断队列是否为空,即应填入“!IsEmpty(tempQ)”或其他等价形式。 使用队列或栈结构存储元素以实现某种运算的基本特点是,当队列非空时,应令队头元素出队列。因此(4)空缺处所填写的内容是“DeQueue(&tempQ,&ptr)”。 若一个节点不存在孩子,则其firstchild指针域为空,也无须令其孩子节点入队列。因此,(5)空缺处所填写的内容是“!ptr->firstchild”或其他等价形式。反之,若一个节点有孩子,则应首先令其第一个孩子节点入队列,然后通过右分支链使其他孩子节点入队列。因此,(6)空缺处所填写的内容是“EnQueue(&tempQ,ptr->firstchild)”,(7)空缺处所填写的内容是“brotherptr=brotherptr->nextbrother”。
解析
转载请注明原文地址:https://kaotiyun.com/show/Y0DZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
下图为某设计模式的类图,类State和Context的关系为(49),类(50)是客户使用的主要接口。(50)
下图为某设计模式的类图,类State和Context的关系为(49),类(50)是客户使用的主要接口。(49)
软件测试的基本方法包括白盒测试和黑盒测试方法,以下关于二者之间关联的叙述,错误的是(61)。
关于汇编语言,以下叙述中正确的是(20)。
在IPv4向IPv6的过渡期间,如果要使得两个IPv6结点可以通过现有的IPv4网络进行通信,则应该使用(27);如果要使得纯IPv6结点可以与纯IPv4结点进行通信,则需要使用(28)。(28)
假设系统中有三类互斥资源R1、R2和R3,可用资源数分别为10、5和3。在T0时刻系统中有P1、P2、P3、P4和P5五个进程,这些进程对资源的最大需求量和已分配资源数如下表所示,此时系统剩余的可用资源数分别为(22)。如果进程按(23)序列执行,那么系统
在数据库逻辑结构设计阶段,需要(20)阶段形成的(21)作为设计依据。(21)
假设磁盘块与缓冲区大小相同,每个盘块读入缓冲区的时间为10μs,由缓冲区送至用户区的时间是5μs,系统对每个磁盘块数据的处理时间为2μs。若用户需要将大小为10个磁盘块的Docl文件逐块从磁盘读入缓冲区,并送至用户区进行处理,那么采用单缓冲区需要花费的时间
在软件维护阶段,将专用报表功能改成通用报表功能,以适应将来可能的报表格式变化,则该维护类型为()维护。
根据ANSI/IEEE829标准,(62)属于《测试案例说明》中的内容。 ①输入说明 ②测试目的 ③环境要求 ④特殊要求
随机试题
测量顾客满意度最常用的手段是______。
A交通性脑积水B梗阻性脑积水C脊柱裂DArnold—Chiari畸形EDandy—Walker畸形可采用颅后窝减压术治疗的疾病是
[2010年,第33题]在图2.11-3所示双缝干涉实验中,若在两缝后(靠近屏一侧)各覆盖一块厚度均为d,但折射率分别为n1和n2(n2>n1)的透明薄片,从两缝发出的光在原来中央明纹处相遇时,光程差为()。
物业管理服务模式要确定的最符合物业实际情况和业主需求的管理服务重点和主要措施包括()。
立方体:几何学
下图非洲局部地区气候类型分布图,读图完成小题。导致非洲大陆气候类型南北对称的原因是()。①赤道穿过中部②沿岸洋流影响③地形类型单一④海陆位置影响
十七届四中全会提出,要大力弘扬理论联系实际的学风,引导党员、干部把学习理论同()结合起来,增强工作的原则性、系统性、预见性、创造性。
资本主义生产关系萌芽是怎样产生和发展的?给明清社会带来什么样的影响?
简述巴班斯基的教学过程最优化理论。
Generallyspeaking,therewardstheemployeesgetintheirjobareindirect______totheefforttheyputin.
最新回复
(
0
)