考试真题题库
第一部分
1) 下列叙述中正确的是
A) 设计算法时只需要考虑结果的可靠性 B) 算法就是程序
C) 设计算法时要考虑时间复杂度和空间复杂度 D) 设计算法时只需要考虑数据结构的设计 答案:C
2) 循环队列的存储空间为 Q(1:50),初始状态为 front=rear=50。经过一系列正常的入队与退队操作后,front=rear=25,此后又插入一个元素,则循环队列中的元素个数为 A) 2
B) 1,或50且产生上溢错误 C) 26 D) 51 答案:B
3) 下列算法中均以比较作为基本运算,则平均情况与最坏情况下的时间复杂度相同的是
A) 在顺序存储的线性表中寻找最大项 B) 在顺序存储的有序表中进行对分查找 C) 在链式存储的有序表中进行查找 D) 在顺序存储的线性表中进行顺序查找 答案:A
4) 设表的长度为20。则在最坏情况下,冒泡排序的比较次数为 A) 19 B) 20 C) 190 D) 90 答案:C
5) 下列叙述中正确的是 A) 循环队列是链式存储结构 B) 循环队列是非线性存储结构 C) 循环队列是线性逻辑结构 D) 循环队列是线性结构 答案:D
6) 设某棵树的度为3,其中度为3,2,1的结点个数分别为3,0,4。则该树中的叶子结点数为 A) 6
B) 不可能有这样的树 C) 7 D) 8 答案:C
7) 设有一个栈与一个队列的初始状态均为空。现有一个序列A,B,C,D,E,F,G,H。先分别将序列中的前4个元素依次入栈,后4个元素依次入队;然后分别将栈中的元素依次退栈,再将队列中的元素依次退队。最后得到的序列为 A) D,C,B,A,H,G,F,E B) A,B,C,D,E,F,G,H C) D,C,B,A,E,F,G,H D) A,B,C,D,H,G,F,E 答案:C
8) 下列叙述中错误的是
A) 具有一个根结点且只有一个叶子结点的数据结构也可能是非线性结构 B) 具有两个以上指针域的链式结构一定属于非线性结构 C) 具有两个根结点的数据结构一定属于非线性结构 D) 具有两个以上叶子结点的数据结构一定属于非线性结构 答案:B
9) 下列结构中属于线性结构链式存储的是 A) 二维数组 B) 二叉链表 C) 双向链表 D) 循环队列
答案:C
10) 下列叙述中错误的是 A) 循环链表的存储空间是连续的
B) 循环链表的表头指针与循环链表中最后一个结点的指针均指向表头结点 C) 循环链表实现了空表与非空表运算的统一 D) 循环链表中有一个表头结点 答案:A
11) 度为3的一棵树共有30个结点,其中度为3,1的结点个数分别为3,4。 则该树中的叶子结点数为 A) 16 B) 15
C) 不可能有这样的树 D) 14 答案:B
12) 在长度为97的顺序有序表中作二分查找,最多需要的比较次数为 A) 96 B) 7 C) 48 D) 6 答案:B
13) 下列结构中属于非线性结构的是 A) 双向链表 B) 二叉链表 C) 循环队列 D) 二维数组 答案:B
14) 从表中任何一个结点位置出发就可以不重复地访问到表中其他所有结点的链表是 A) 循环链表 B) 二叉链表 C) 双向链表
D) 单向链表 答案:A
15) 设某棵树的度为3,其中度为3,1,0的结点个数分别为3,4,15。 则该树中总结点数为 A) 30 B) 22 C) 35
D) 不可能有这样的树 答案:A
16) 下列叙述中正确的是
A) 线性表中各元素的数据类型可以不同 B) 对线性表只能作插入与删除运算 C) 数组是长度固定的线性表 D) 矩阵是非线性结构 答案:C
17) 在快速排序法中,每经过一次数据交换(或移动)后 A) 不会产生新的逆序 B) 能消除多个逆序
C) 消除的逆序个数一定比新产生的逆序个数多 D) 只能消除一个逆序 答案:B
18) 线性表的长度为n。在最坏情况下,比较次数为n-1的算法是 A) 有序表的插入
B) 同时寻找最大项与最小项 C) 寻找最大项 D) 顺序查找 答案:C
19) 设某棵树的度为3,其中度为2,1,0的结点个数分别为3,4,15。则该树中总结点数为
A) 不可能有这样的树 B) 35
C) 30 D) 22 答案:A
20) 下列叙述中错误的是
A) 非空线性结构中只有一个结点没有后件
B) 只有一个根结点和一个叶子结点的结构必定是线性结构 C) 向量是线性结构
D) 非空线性结构中只有一个结点没有前件 答案:B
21) 在希尔排序法中,每经过一次数据交换后 A) 能消除多个逆序
B) 消除的逆序个数一定比新产生的逆序个数多 C) 只能消除一个逆序 D) 不会产生新的逆序 答案:A
22) 下列叙述中正确的是
A) 所有的线性结构都可以采用顺序存储结构 B) 能采用顺序存储的必定是线性结构 C) 循环队列是队列的链式存储结构
D) 具有两个以上指针的链表必定是非线性结构 答案:A
23) 设表的长度为n。在下列算法中,最坏情况下时间复杂度最高的是 A) 希尔排序 B) 堆排序
C) 循环链表中寻找最大项 D) 有序链表查找 答案:A
24) 设循环队列的存储空间为Q(1: 50),初始状态为 front=rear=50。经过一系列正常的操作后,front=rear-1。为了在该队列中寻找值最大的元素,在最坏情况下需要的比较次数为 A) 49