1、科启教育 会计 计算机 教师资格 二级 C语言及公共基础选择题 001) 对长度为 n的线性表排序,在最坏情况下,比较次数不是 n(n 1)/2的排序方法是 A) 快速排序 B) 冒泡排序 C) 直接插入排序 D) 堆排序 答案: D 002) 下列关于栈的叙述正确的是 A) 栈按 “先进先出 “组织数据 B) 栈按 “先进后出 “组织数据 C) 只能在栈底插入数据 D) 不能删除数据 答案: B 003) 算法的空间复杂度是指 A) 算法在执行过程中所需要的计算机存储空间 B) 算法所处理的数据量 C) 算法程序中的语句或指令条数 D) 算法在执行过程中所需要的临时工作单元数 答案: A 0
2、04) 某二叉树有 5个度为 2的结点,则该二叉树中的叶子结点数是 A) 10 B) 8 C) 6 D) 4 答案: C 005) 算法的有穷性是指 A) 算法程序的运行时间是有限的 B) 算法程序所处理的数据量是有限的 C) 算法程序的长度是有限的 D) 算法只能被有限的用户使用 答案: A 006) 下列叙述中正确的是 A) 算法复杂度是指算法控制结构的复杂程度 B) 算法复杂度是指设计算法的难度 C) 算法的时间复杂度是指设计算法的工作量 D) 算法的复杂度包括时间复杂度与空间复杂度 答案: D 009) 下列数据结构中,属于非线性结构的是 A) 循环队列 B) 带链队列 C) 二叉树
3、D) 带链栈 答案: C 011) 一个栈的初始状态为空。现将元素 1、 2、 3、 4、 5、 A、 B、 C、 D、 E依次入栈,然后再依次出栈,则元素出栈的顺序是 A) 12345ABCDE B) EDCBA54321 C) ABCDE12345 D) 54321EDCBA 答案: B 012) 下列叙述中正确的是 A) 循环队列有队头和队尾两个指针,因此,循环队列是非线性结构 B) 在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况 C) 在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况 D) 循环队列中元素的个数是由队头指针和队尾指针共同决定 答案: D 013
4、) 在长度为 n的有序线性表中进行二分查找,最坏情况下需要比较的次数是 A) O(n) B) C) D) 科启教育 会计 计算机 教师资格 答案: C 014) 下列叙述中正确的是 A) 顺序存储结构的存储一定是连续的,链式存储结构的存储空间不一定是连续的 B) 顺序存储结构只针对线性结构,链式存储结构只针对非线性结构 C) 顺序存储结构能存储有序表,链式存储结构不能存储有序表 D) 链式存储结构 比顺序存储结构节省存储空间 答案: A 015) 对于循环队列,下列叙述中正确的是 A) 队头指针是固定不变的 B) 队头指针一定大于队尾指针 C) 队头指针一定小于队尾指针 D) 队头指针可以大于
5、队尾指针,也可以小于队尾指针 答案: D 019) 下列排序方法中,最坏情况下比较次数最少的是 A) 冒泡排序 B) 简单选择排序 C) 直接插入排序 D) 堆排序 答案: D 021) 下列叙述中正确的是 A) 栈是“先进先出”的线性表 B) 队列是“先进后出”的线性表 C) 循环队列是非线性结构 D) 有序线性表既可以采用顺序存储结构,也可以采用链式存储结构 答案: D 022) 支持子程序调用的数据结构是 A) 栈 B) 树 C) 队列 D) 二叉树 答案: A 028) 下列数据结构中,能够按照“先进后出”原则存取数据的是 A) 循环队列 B) 栈 C) 队列 D) 二叉树 答案: B
6、 041) 下列叙述中正确的是 A) 线性表的链式存储结构与顺序存储结构所需要的存储空间是相同的 B) 线性表的链式存储结构所需要的存储空间一般要多于顺序存储结构 C) 线性表的链式存储结构所需要的存储空间一般要少于顺序存储结构 答案: B 042) 下列叙述中正确的是 A) 栈是一种先进先出的线性表 B) 队列是一种后进先出的线性表 C) 栈与队列都是非线性结构 D) 栈与队列都是线性结构 答案: D 043) 一棵完全二叉树共有 360个结点,则在该二叉树中度为 1的结点个数为 A) 0 B) 1 C) 180 D) 181 答案: B 044) 算法的时间复杂度是指 A) 设计该算法所需
7、的工作量 B) 执行该算法所需要的时间 C) 执行该算法时所需要的基本运算次数 D) 算法中指令的条数 答案: C 051) 下列关于栈叙述正确的是 A) 栈顶元素最先能被删除 B) 栈顶元素最后才能被删除 C) 栈底元素永远不能被删除 答案: A 科启教育 会计 计算机 教师资格 052) 下列叙述中正确的是 A) 在栈中,栈中元素随栈底指针与栈顶指针的变化而动态变化 B) 在栈中,栈顶指针不变,栈中元素随栈底指针的变化而动态变化 C) 在栈中,栈底指针不变,栈中元素随栈顶指针的变化而动态变化 答案: C 053) 某二叉树共有 7个结点,其中叶子结点只有 1个,则该二叉树的深度为(假设根结
8、点 在第 1层) A) 3 B) 4 C) 6 D) 7 答案: D 054) 设循环队列存储空间为 Q( 1:50) ,初始状态为 front=rear=50。经过一系列入队和退队操作后,front=rear=25,则该循环队列中元素个数为 A) 26 B) 25 C) 24 D) 0或 50 答案: D 061) 下列叙述中正确的是 A) 算法就是程序 B) 设计算法时只需要考虑数据结构的设计 C) 设计算法时只需要考虑结果的可靠性 D) 以上三种说法都不对 答案: D 062) 下列叙述中正确的是 A) 有一个以上根结点的数据结构不一定是非线性结构 B) 只有一个根结点的数据结构不一定是
9、线性结构 C) 循环链表是非线性结构 D) 双向链表是非线性结构 答案: B 063) 下列关于二叉树的叙述中,正确的是 A) 叶子结点总是比度为 2的结点少一个 B) 叶子结点总是比度为 2的结点多一个 C) 叶子结点数是度为 2的结点数的两倍 D) 度为 2的结点数是度为 1的结点数的两倍 答案: B 064) 下列各组的排序方法中,最坏情况下比较次数相同的是 A) 冒泡排序与快速排序 B) 简单插入排序与希尔排序 C) 堆排序与希尔排序 D) 快速排序与希尔排序 答案: A 071) 下列叙述中正确的是 A) 循环队列是队列的一种链式存储结构 B) 循环队列是队列的一种顺序存储结构 C)
10、 循环队列是非线性结构 D) 循 环队列是一种逻辑结构 答案: B 072) 下列关于线性链表的叙述中,正确的是 A) 各数据结点的存储空间可以不连续,但它们的存储顺序与逻辑顺序必须一致 B) 各数据结点的存储顺序与逻辑顺序可以不一致,但它们的存储空间必须连续 C) 进行插入与删除时,不需要移动表中的元素 答案: C 073) 一棵二叉树共有 25个结点,其中 5个是叶子结点,则度为 1的结点数为 A) 16 B) 10 C) 6 D) 4 答案: A 074) 设循环队列存储空间为 Q(1:50)。初始状态为 front=rear=50。经过一系列入队和退队操作后, front=14,科启教
11、育 会计 计算机 教师资格 rear=19,则该循环队列中的元素个数为 A) 46 B) 45 C) 6 D) 5 答案: D 081) 下列链表中,其逻辑结构属于非线性结构的是 A) 二叉链表 B) 循环链表 C) 双向链表 D) 带链的栈 答案: A 082) 设循环队列的存储空间为 Q(1: 35),初始状态为 front=rear=35。现经过一系列入队与退队运算后,front=15, rear=15,则循环队列中的元素个数为 A) 15 B) 16 C) 20 D) 0或 35 答案: D 083) 下列关于栈的叙述中,正确的是 A) 栈底元素一定是最后入栈的元素 B) 栈顶元素一定
12、是最先入栈的元素 C) 栈操作遵循先进后出的原则 答案: C 084) 设二叉树共有 150个结点,其中度为 1的结点有 10个,则该二叉树中的叶子结点数为 A) 71 B) 70 C) 69 D) 不可能有这样的二叉树 答案: D 091) 下列叙述中正确的是 A) 程序执行的效率与数据的存储结构密切相关 B) 程序执行的效率只取决于程序的控制结构 C) 程序执行的效率只取决于所处理的数据量 答案: A 092) 下列与队列结构有关联的是 A) 函数的递归调用 B) 数组元素的引用 C) 多重循环的执行 D) 先到先服务的作业调度 答案: D 093) A) DYBEAFCZX B) YDE
13、BFZXCA C) ABDYECFXZ D) ABCDEFXYZ 答案: C 094) 一个栈的初始状态为空。现将元素 1,2,3,A,B,C依次入栈,然后再依次出栈,则元素出栈的顺序是 A) 1,2,3,A,B,C B) C,B,A,1,2,3 C) C,B,A,3,2,1 D) 1,2,3,C,B,A 科启教育 会计 计算机 教师资格 答案: C 101) 下列叙述中正确的是 A) 一个算法的空间复杂度大,则其时间复杂度也必定大 B) 一个算法的空间复杂度大,则其时间复杂度必定小 C) 一个算法的时间复杂度大,则其空间复杂度必定小 D) 算法的时间复杂度与空间复杂度没有直接关系 答案: D
14、 102) 下列叙述中正确的是 A) 循环队列中的元素个数随队头指针与队尾指针的变化而动态变化 B) 循环队列中的元素个数随队头指针的变化而动态变化 C) 循环队列中的元素个数随队尾指针的变化而动态变化 答案: A 103) 一棵二叉树中共有 80个叶子结点与 70个度为 1的结点,则该二叉树中的总结点数为 A) 219 B) 229 C) 230 D) 231 答案: B 104) 对长度为 10的线性表进行冒泡排序,最坏情况下需要比较的次数为 A) 9 B) 10 C) 45 D) 90 答案: C 111) 下列叙述中正确的是 A) 算法的效率只与问题的规模有关,而与数据的存储 结构无关
15、 B) 算法的时间复杂度是指执行算法所需要的计算工作量 C) 数据的逻辑结构与存储结构是一一对应的 D) 算法的时间复杂度与空间复杂度一定相关 答案: B 112) 下列叙述中正确的是 A) 线性表链式存储结构的存储空间一般要少于顺序存储结构 B) 线性表链式存储结构与顺序存储结构的存储空间都是连续的 C) 线性表链式存储结构的存储空间可以是连续的,也可以是不连续的 答案: C 113) 某二叉树共有 12个结点,其中叶子结点只有 1个。则该二叉树的深度为(根结点在第 1层) A) 3 B) 6 C) 8 D) 12 答案: D 114) 对长度为 n的线性表作快速排序,在最坏情况下,比较次数
16、为 A) n B) n-1 C) n(n-1) D) n(n-1)/2 答案: D 121) 下列叙述中正确的是 A) 有且只有一个根结点的数据结构一定是线性结构 B) 每一个结点最多有一个前件也最多有一个后件的数据结构一 定是线性结构 C) 有且只有一个根结点的数据结构一定是非线性结构 D) 有且只有一个根结点的数据结构可能是线性结构,也可能是非线性结构 答案: D 122) 下列叙述中错误的是 A) 在双向链表中,可以从任何一个结点开始直接遍历到所有结点 B) 在循环链表中,可以从任何一个结点开始直接遍历到所有结点 C) 在线性单链表中,可以从任何一个结点开始直接遍历到所有结点 D) 在二
17、叉链表中,可以从根结点开始遍历到所有结点 科启教育 会计 计算机 教师资格 答案: C 123) 某二叉树共有 13个结点,其中有 4个度为 1的结点,则叶 子结点数为 A) 5 B) 4 C) 3 D) 2 答案: A 124) 设栈的顺序存储空间为 S(1: 50),初始状态为 top=0。现经过一系列入栈与退栈运算后, top=20,则当前栈中的元素个数为 A) 30 B) 29 C) 20 D) 19 答案: C 131) 下列叙述中正确的是 A) 栈与队列都只能顺序存储 B) 循环队列是队列的顺序存储结构 C) 循环链表是循环队列的链式存储结构 答案: B 132) 设某二叉树的前序
18、序列为 ABC,中序序列为 CBA,则该二叉树的后序序列为 A) BCA B) CBA C) ABC D) CAB 答案: B 133) 下列排序方法中,最坏情况下时间复杂度最小的是 A) 冒泡排序 B) 快速排序 C) 堆排序 D) 直接插入排序 答案: C 134) 为了对有序表进行对分查找,则要求有序表 A) 只能顺序存储 B) 只能链式存储 C) 可以顺序存储也可以链式存储 D) 任何存储方式 答案: A 141) 设某二叉树的后序序列为 CBA,中序序列为 ABC,则该二叉树的前序序列为 A) BCA B) CBA C) ABC D) CAB 答案: C 142) 下列叙述中正确的是
19、 A) 存储空间不连续的所有链表一定是非线性结构 B) 结点中有多个指针域的所有链表一定是非线性结构 C) 能顺序存储的数据结构一定是线性结构 D) 带链的栈与队列是线性结构 答案: D 143) 算法时间复杂度的度量方法是 A) 算法程序的长度 B) 执行算法所需要的基本运算次数 C) 执行算法所需要的所有运算次数 D) 执行算法所需要的时间 答案: B 144) 设循环队列为 Q(1: m),初始状态为 front=rear=m。现经过一系列的入队与退队运算后, front=rear=1,则该循环队列中的元素个数为 A) 1 B) 2 C) m-1 D) 0或 m 答案 : D 151)
20、在最坏情况下 A) 快速排序的时间复杂度比冒泡排序的时间复杂度要小 B) 快速排序的时间复杂度比希尔排序的时间复杂度要小 C) 希尔排序的时间复杂度比直接插入排序的时间复杂度要小 D) 快速排序的时间复杂度与希尔排序的时间复杂度是一样的 答案: C 152) 在深度为 7的满二叉树中,度为 2的结点个数为 科启教育 会计 计算机 教师资格 A) 64 B) 63 C) 32 D) 31 答案: B 153) 设栈的顺序存储空间为 S(1: m),初始状态为 top=m+1。现经过一系列入栈与退栈运算后, top=20,则当前栈中的元素个数为 A) 30 B) 20 C) m-19 D) m-2
21、0 答案: C 154) 算法空间复杂度的度量方法是 A) 算法程序的长度 B) 算 法所处理的数据量 C) 执行算法所需要的工作单元 D) 执行算法所需要的存储空间 答案: D 161) 设循环队列为 Q(1: m),其初始状态为 front=rear=m。经过一系列入队与退队运算后, front=15, rear=20。现要在该循环队列中寻找最大值的元素,最坏情况下需要比较的次数为 A) 4 B) 6 C) m-5 D) m-6 答案: A 162) 下列叙述中正确的是 A) 循环队列属于队列的链式存储 结构 B) 双向链表是二叉树的链式存储结构 C) 非线性结构只能采用链式存储结构 D)
22、 有的非线性结构也可以采用顺序存储结构 答案: D 163) 某二叉树中有 n个叶子结点,则该二叉树中度为 2的结点数为 A) n+1 B) n-1 C) 2n D) n/2 答案 : B 164) 下列叙述中错误的是 A) 算法的时间复杂度与算法所处理数据的存储结构有直接关系 B) 算法的空间复杂度与算法所处理数据的存储结构有直接关系 C) 算法的时间复杂度与空间复杂度有直接关系 答案: C 171) 设栈的顺序存储空间为 S(0:49),栈底指针 bottom=49,栈顶指针 top=30(指向栈顶元素)。则栈中的元素个数为 A) 30 B) 29 C) 20 D) 19 答案: C 17
23、2) 某二叉树的前序序列为 ABCDEFG,中序序列为 DCBAEFG,则该二叉树的深度(根结点在第 1层)为 A) 2 B) 3 C) 4 D) 5 答案: C 173) 下列叙述中正确的是 A) 存储空间连续的数据结构一定是线性结构 B) 存储空间不连续的数据结构一定是非线性结构 C) 没有根结点的非空数据结构一定是线性结构 D) 具有两个根结点的数据结构一定是非线性结构 答案: D 174) 下列叙述中正确的是 A) 带链队列的存储空间可以不连续,但队头指针必须大于队尾指针 B) 带链队列的存储空间可以不连续,但队头指针必须小于队尾指针 C) 带链队列的存储空间可以不连续,且队头指针可以
24、大于也可以小于队尾指针 答案: C 181) 设循环队列为 Q(1:m),其初始状态为 front=rear=m。经过一系列入队与退队运算后, front=20, rear=15。现要在该循环队列中寻找最小值的元素,最坏情况下需要比较的次数为 科启教育 会计 计算机 教师资格 A) 5 B) 6 C) m-5 D) m-6 答案: D 182) 某二叉树的前序序列为 ABCDEFG,中序序列为 DCBAEFG,则该二叉树的后 序序列为 A) EFGDCBA B) DCBEFGA C) BCDGFEA D) DCBGFEA 答案: D 183) 下列叙述中正确的是 A) 在链表中,如果每个结点有
25、两个指针域,则该链表一定是非线性结构 B) 在链表中,如果有两个结点的同一个指针域的值相等,则该链表一定是非线性结构 C) 在链表中,如果每个结点有两个指针域,则该链表一定是线性结构 D) 在链表中,如果有两个结点的同一个指针域的值相等,则该链表一定是线性结构 答案: B 184) 下列叙述中错误的是 A) 在带链队列中,队头指针和队尾指针都是在动态变化的 B) 在带链栈中,栈顶指针和栈底指针都是在动态变化的 C) 在带链栈中,栈顶指针是在动态变化的,但栈底指针是不变的 答案: B 191) 设数据元素的集合 D= 1,2,3,4,5 ,则满足下列关系 R的数据结构中为线性结构的是 A) R=
26、 (1,2), (3,4), (5,1) B) R= (1,3), (4,1), (3,2), (5,4) C) R= (1,2), (2,3), (4,5) D) R= (1,3), (2,4), (3,5) 答案: B 192) 下列叙述中正确的是 A) 链表结点中具有两个指针域的数据结构可以是线性结构,也可以是非线性结构 B) 线性表的链式存储结构中,每个结点必须有指向前件和指向后件的两个指针 C) 线性表的链式存储结构中,每个结点只能有一个指向后件的指针 D) 线性表的链式存储结构中,叶子结点的指针只能是空 答案: A 193) 一个栈的初始状态为空,现将元素 A,B,C,D,E依次入
27、栈,然后依次退栈三次 ,并将退栈的三个元素依次入队(原队列为空),最后将队列中的元素全部退出。则元素退队的顺序为 A) ABC B) CBA C) EDC D) CDE 答案: C 194) 某二叉树的中序序列为 DCBAEFG,后序序列为 DCBGFEA,则该二叉树的深度(根结点在第 1层)为 A) 5 B) 4 C) 3 D) 2 答案: B 201) 下列叙述中正确的是 A) 所谓算法就是计算方法 B) 程序可以作为算法的一种描述方法 C) 算法设计只需考虑得到计算结果 D) 算法设计可以忽略算法的运算时间 答案: B 202) 下列各序列中不是堆的是 A) (91,85,53,36,4
28、7,30,24,12) B) (91,85,53,47,36,30,24,12) C) (47,91,53,85,30,12,24,36) D) (91,85,53,47,30,12,24,36) 答案: C 203) 深度为 5的完全二叉树的结点数不可能是 A) 15 B) 16 C) 17 D) 18 答案: A 204) 科启教育 会计 计算机 教师资格 A) ABDEGCFH B) DBGEAFHC C) DGEBHFCA D) ABCDEFGH 答案: A 211) 下列叙述中正确的是 A) 循环队列是顺序存储结构 B) 循环队列是链式存储结构 C) 循环队列是非线性结构 D) 循环
29、队列的插入运算不会发生溢出现象 答案: A 212) 下列叙述中正确的是 A) 所有数据结构必须有根结点 B) 所有数据结构必须有终端结点(即叶子结点) C) 只有一个根结点,且只有一个叶子结点的数据结构一定是线性结构 D) 没有根结点或没有叶子结点的数据结构一定是非线性结构 答案: D 213) 下列关于算法的描述中错误的是 A) 算法强调动态的执行过程,不同于静态的计算公式 B) 算法必须能在有限个步骤之后终止 C) 算法设计必须考虑算法的复杂度 D) 算法的优劣取决于运行算法程序的环境 答案: D 214) A) ABDEGCFH B) DBGEAFHC C) DGEBHFCA D) A
30、BCDEFGH 科启教育 会计 计算机 教师资格 答案: B 221) 线性表的链式存储结构与顺序存储结构相比,链式存储结构的优点有 A) 节省存储空间 B) 插入与删除运算效率高 C) 便于查找 D) 排序时减少元素的比较次数 答案: B 222) 深度为的完全二叉树中共有 125个 结点,则该完全二叉树中的叶子结点数为 A) 62 B) 63 C) 64 D) 65 答案: B 223) 下列叙述中正确的是 A) 所谓有序表是指在顺序存储空间内连续存放的元素序列 B) 有序表只能顺序存储在连续的存储空间内 C) 有序表可以用链接存储方式存储在不连续的存储空间内 D) 任何存储方式的有序表均
31、能采用二分法进行查找 答案: C 224) A) ABDEGCFH B) DBGEAFHC C) DGEBHFCA D) ABCDEFGH 答案: C 231) 下列叙述中正确的是 A) 结点中具有两个指针域的链表一定是二叉链表 B) 结点中具有两个指针域的链表可以是线性结构,也可以是非线性结构 C) 二叉树只能采用链式存储结构 D) 循环链表是非线性结构 答案: B 232) 设某二叉树中共有 140个结点,其中有 40个度为 1的结点。则 A) 该二叉树中有 51个叶子结点 B) 该二叉树中有 50个叶子结点 C) 该二叉树中有 51个度为 2的结点 D) 该二叉树中有 50个度为 2的结点 E) 不可能有这样的二叉树 答案: E 233) 带链的栈与顺序存储的栈相比,其优点是 A) 入栈与退栈操作方便 B) 可以省略栈底指针 C) 入栈操作时不会受栈存储空间的限制而发生溢出 答案: C 234) 某二叉树的前序序列为 ABCD,中序序列为 DCBA,则后序序列为 A) BADC B) DCBA C) CDAB D) ABCD