【NCRE学习笔记008】计算机等级考试基础知识---番外外外篇

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u014576936/article/details/88893763

1、

设表的长度为 n。下列查找算法中,在最坏情况下,比较次数最少的是( )。
A) 有序表的二分查找
B) 顺序查找
C) 寻找最大项
D) 寻找最小项
A【解析】顺序查找和寻找最大项、最小项在最坏情况下比较次数为 n。对于长度为 n 的有
序线性表,在最坏情况下,二分法查找只需要比较 (log以2为底n为对数) 次。故本题答案为 A 选项。
 

2、

设一棵树的度为 3,其中没有度为 2 的结点,且叶子结点数为 5。该树中度为 3 的结点数
为( )。
A) 2
B) 1
C) 3
D) 不可能有这样的树
A【解析】在数结构中,一个结点所拥有的后件个数称为该结点的度,所有结点中的最大的
度称为树的度。本题中,树的度为 3,没有度为 2 的结点,叶子结点数为 5。因此,根结点
为度为 3,第二层的 3 个结点中有一个度为 3,共有 2 个度为 3 的结点。故本题答案为 A 选
项。
 

3、

某二叉树的前序序列为 ABDFHCEG,中序序列为 HFDBACEG。该二叉树的后序序列为( )。
A) HFDBGECA
B) ABCDEFGH
C) HGFEDCBA
D) ACEGBDFH
A【解析】前序遍历:访问根结点在访问左子树和访问右子树之前。即先访问根结点,然后
遍历左子树,最后遍历右子树;并且在遍历左子树和右子树时,仍然先访问根结点,然后遍
历左子树,最后遍历右子树。
中序遍历:访问根结点在访问左子树和访问右子树两者之间。即先遍历左子树,然后访问根
结点,最后遍历右子树。并且在遍历左子树和右子树时,仍然首先遍历左子树,然后访问根
结点,最后遍历右子树。
后序遍历:访问根结点在访问左子树和访问右子树之后。即首先遍历左子树,然后遍历右子
树,最后访问根结点;并且在遍历左子树和右子树时,仍然首先遍历左子树,然后遍历右子
树,最后访问根结点。
二叉树的前序遍历序列为 ABDFHCEG,中序遍历序列为 HFDBACEG,可知该树 A 为根结点。左
结点有 BDFH,右结点为 CEG。 B 结点下面各结点只有左结点, C 结点下面各结点只有右结点,
则后序遍历列序列为 HFDBGECA。故本题答案为 A 选项。
 

4、

5、

结构化程序设计风格强调的是( )。
A) 程序的易读性
B) 程序的执行效率
C) 不考虑 goto 语句的限制使用
D) 程序的可移植性
A【解析】良好的程序设计风格可以使程序结构清晰合理,程序代码便于维护。按结构化程
序设计方法设计出的程序具有程序易于理解、使用和维护的特点。可见结构化程序设计风格
强调的是易读性。故本题答案为 A 选项。
 

6、

数据模型包括数据结构、数据完整性约束和( )。
A) 数据操作
B) 数据类型
C) 关系运算
D) 查询
A【解析】数据模型所描述的内容有三个部分,它们是数据结构、数据操纵与数据约束。故
本题答案为 A 选项

 

7、

一名员工可以使用多台计算机,每台计算机可由多名员工使用,则实体员工和计算机间的
联系是( )。
A) 多对多
B) 一对多
C) 一对一
D) 多对一
A【解析】因为一名员工可以使用多台计算机,而每台计算机可以被多名员工使用,所以员
工和计算机两个实体之间是多对多的关系。故本题答案为 A 选项。
 

8、

9、下列叙述中错误的是( )。
A) 算法的时间复杂度与问题规模无关
B) 算法的时间复杂度与计算机系统无关
C) 算法的时间复杂度与空间复杂度没有必然的联系
D) 算法的空间复杂度与算法运行输出结果的数据量无关
A【解析】算法的时间复杂度是指执行算法所需要的计算机工作量,而算法的计算机工作量
是用算法所执行的基本运算次数来度量的,算法所执行的基本运算次数和问题的规模有关。
算法的空间复杂度指执行这个算法所需要的内存空间。为降低算法的空间复杂度,主要应减
少输入数据所占的存储空间及额外空间,通常采用压缩存储技术。由于在编程时要受到计算
机系统运行环境的限制,因此,程序的编制通常不可能优于算法的设计。算法执行时所需要
的计算机资源越多算法复杂度越高,因此算法的复杂度和问题规模成正比。算法设计时要考
虑算法的复杂度,问题规模越大越是如此。
算法的时间复杂度与空间复杂度没有必然的联系。算法的空间复杂度与算法运行输出结果的
数据量无关。
故本题答案为 A 选项。

10、

设表的长度为 20。则在最坏情况下,冒泡排序的比较次数为( )。
A) 190
B) 20
C) 19
D) 90
A【解析】对长度为 n 的线性表排序,在最坏情况下,冒泡排序需要比较的次数为 n(n-1)/2。
本题中 n=20, 20×(20-1) /2=190。故本题答案为 A 选项。
 

11、下列叙述中正确的是( )。
A) 带链栈的栈底指针是随栈的操作而动态变化的
B) 若带链队列的队头指针与队尾指针相同,则队列为空
C) 若带链队列的队头指针与队尾指针相同,则队列中至少有一个元素
D) 带链栈的栈底指针是固定的
A【解析】由于带链栈利用的是计算机存储空间中的所有空闲存储结点,因此随栈的操作栈
顶栈底指针动态变化。带链的队列中若只有一个元素,则首尾指针相同。故本题答案为 A
选项。

12、

设一棵树的度为 3,共有 27 个结点,其中度为 3, 2, 0 的结点数分别为 4, 1, 10。该树
中度为 1 的结点数为( )。
A) 12
B) 13
C) 11
D) 不可能有这样的树
A【解析】在树结构中,一个结点所拥有的后件个数称为该结点的度,所有结点中最大的度
称为树的度。
根据题意,度为 3 的树第 1 层 1 个根结点,第 2 层 3 个子结点,每个子结点下各 3 个子结点,
所以第 3 层共 9 个子结点,前 3 层共 13 个结点。第 3 层有一个结点度为 2 即有 2 个子结点,
本层其他结点各 1 个子结点;即第 4 层共 10 个结点。前 4 层共 23 个结点。第 4 层中的两个
结点下各有一个子结点,即第 5 层有 2 个结点,此 2 个结点下各有一个子结点。
第3层有8个度为1的结点,第4层有2个度为1的结点,第5层有2个度为1的结点, 8+2+2=12。
故本题答案为 A 选项。
 

13、

下面描述中正确的是( )。
A) 好的软件设计应是高内聚低耦合
B) 内聚性和耦合性无关
C) 内聚性是指多个模块间相互连接的紧密程度
D) 耦合性是指一个模块内部各部分彼此结合的紧密程度
A【解析】软件设计中模块划分应遵循的准则是高内聚低偶合、模块大小规模适当、模块的
依赖关系适当等。模块的划分应遵循一定的要求,以保证模块划分合理,并进一步保证以此
为依据开发出的软件系统可靠性强,易于理解和维护。模块之间的耦合应尽可能的低,模块
的内聚度应尽可能的高。故本题答案为 A 选项。
 

14、

15、

下面选项中不是关系数据库基本特征的是( )。
A) 不同的列应有不同的数据类型
B) 不同的列应有不同的列名
C) 与行的次序无关
D) 与列的次序无关
A【解析】二维表由每行数据组成,每行数据包含若干属性值,每个属性都有指定的类型和
取值范围。数据行数是有限的,每行数据互不相同(元组唯一性),每行的次序可以任意交
换(元组的次序无关性);表中属性名各不相同即字段名不重复,属性名(字段名)次序可任
意交换。故本题答案为 A 选项。
 

16、

学生和课程的关系模式定义为
S(S#,Sn,Sd,Dc,SA)(其属性分别为学号、姓名、所在系、所在系的系主任、年龄);
C(C#,Cn,P#)(其属性分别为课程号、课程名、先选课);
SC(S#,C#,G)(其属性分别学号、课程号和成绩)。
关系中包含对主属性传递依赖的是( )。
A) S#→Sd,Sd→Dc
B) S#→Sd
C) S#→Sd,(S#,C#)→G
D) C#→P#,(S#,C#)→G
A【解析】 设 X、 Y、 Z 是关系 R 中互不相同的属性集合,存在 X→Y(Y!→X), Y→Z,则称 Z
传递函数依赖于 X。 在 S 中 S#→Sd,Sd→Dc,则 Dc 传递函数依赖于 S#。故本题答案为 A 选
项。
 

17、

设数据结构 B=(D, R),其中
D={ a, b, c, d, e, f }
R={ (f, A) , (d, B) , (e, D) , (c, e), (a, C) }
该数据结构为( )。
A) 线性结构
B) 循环队列
C) 循环链表
D) 非线性结构
A【解析】数据的逻辑结构有两个要素:一是数据元素的集合,通常记为 D;二是 D 上的关
系,它反映了 D 中各数据元素之间的前后件关系,通常记为 R。即一个数据结构可以表示成
B=(D,R)。其中 B 表示数据结构。为了反映 D 中各数据元素之间的前后件关系,一般用二元
组来表示。例如,假设 a 与 b 是 D 中的两个数据,则二元组(a,b)表示 a 是 b 的前件, b
是 a 的后件。
如果一个非空的数据结构满足下列两个条件:①有且只有一个根结点;②每一个结点最多有
一个前件,也最多有一个后件。则称该数据结构为线性结构。如果一个数据结构不是线性结
构,则称之为非线性结构。
根据上述理论,本题中 f 为根结点,每个结点有一个前件和一个后件,符合线性结构的定义。
故本题答案为 A 选项。
 

18、

下列叙述中错误的是( )。
A) 循环队列空的条件是队头指针与队尾指针相同
B) 若二叉树没有叶子结点,则为空二叉树
C) 带链栈的栈底指针是随栈的操作而动态变化的
D) 若带链队列中只有一个元素,则队头指针与队尾指针必定相同
A【解析】在循环队列中,当 front=rear 时,不能确定是队列满还是队列空。在实际使用循
环队列时,为了能区分队列满还是队列空,通常还需要增加一个标志 s。当 s=0 时表示队列
空,当 s=1 且 front=rear 时表示队列满。故本题答案为 A 选项。
 

19、

某带链栈的初始状态为 top=bottom=NULL,经过一系列正常的入栈与退栈操作后,
top=bottom=20。该栈中的元素个数为( )。
A) 1
B) 0
C) 20
D) 不确定
A【解析】带链的栈是具有栈属性的链表。线性链表的存储单元是不连续的,为把存储空间
中一些离散的空闲存储结点利用起来,把所有空闲的结点组织成一个带链的栈,称为可利用
栈。线性链表执行删除操作运算时,被删除的结点可以“回收”到可利用栈,对应于可利用
栈的入栈运算,线性链表执行插入运算时,需要一个新的结点,可以在可利用栈中取栈顶结
点,对应于可利用栈的退栈运算。可利用栈的入栈运算和退栈运算只需要改动 top 指针即可。
当 top=bottom=20 时链栈中的元素个数为 1。故本题答案为 A 选项。
 

20、

21、

22、

23、

24、

25、

26、

27、

28、

29、

30、


end

猜你喜欢

转载自blog.csdn.net/u014576936/article/details/88893763
今日推荐