数据结构试题-考研精选(2)
发布时间:2021-06-05
发布时间:2021-06-05
1.组成数据的基本单位是(C )。 (A) 数据项 (B) 数据类型 (C) 数据元素 (D) 数据变量
2.设数据结构A=(D,R),其中D={1,2,3,4},R={r},r={<1,2>,<2,3>,<3,4>,<4,1>},则数据结构A是( C )。 (A) 线性结构 (B) 树型结构 (C) 图型结构 (D) 集合 3.数组的逻辑结构不同于下列(D )的逻辑结构。 (A) 线性表 (B) 栈 (C) 队列 (D) 树 4.二叉树中第i(i≥1)层上的结点数最多有(B )个。
(A) 2i (B) 2i (C) 2i-1 (D) 2i-1
5.设指针变量p指向单链表结点A,则删除结点A的后继结点B需要的操作为( C )。
(A) p->next=p->next->next (B) p=p->next (C) p=p->next->next (D) p->next=p
6.设栈S和队列Q的初始状态为空,元素E1、E2、E3、E4、E5和E6依次通过栈S,一个元素出栈后即进入队列Q,若6个元素出列的顺序为E2、E4、E3、E6、E5和E1,则栈S的容量至少应该是(B )。 (A) 6 (B) 4 (C) 3 (D) 2
7.将10阶对称矩阵压缩存储到一维数组A中,则数组A的长度最少为(A )。 (A) 100 (B) 40 (C) 55 (D) 80
8.设结点A有3个兄弟结点且结点B为结点A的双亲结点,则结点B的度数数为(A )。 (A) 3 (B) 4 (C) 5 (D) 1
9.根据二叉树的定义可知二叉树共有( B)种不同的形态。 (A) 4 (B) 5 (C) 6 (D) 7
10. 设有以下四种排序方法,则(A )的空间复杂度最大。
(A) 冒泡排序 (B) 快速排序 (C) 堆排序 (D) 希尔排序
二、填空题(30分)
1. 设顺序循环队列Q[0:m-1]的队头指针和队尾指针分别为F和R,其中队头指针F指向当前队头元素的前一个位置,队尾指针R指向当前队尾元素所在的位置,则出队列的语句为F =M-1__________;。 2. 设线性表中有n个数据元素,则在顺序存储结构上实现顺序查找的平均时间复杂度为__O(N)___,在链式存储结构上实现顺序查找的平均时间复杂度为__O(N)_______。
3. 设一棵二叉树中有n个结点,则当用二叉链表作为其存储结构时,该二叉链表中共有________个指针域,__________个空指针域。
4. 设指针变量p指向单链表中结点A,指针变量s指向被插入的结点B,则在结点A的后面插入结点B的操作序列为______________________________________。
5. 设无向图G中有n个顶点和e条边,则其对应的邻接表中有__1____个表头结点和____N____个表结点。
6. 设无向图G中有n个顶点e条边,所有顶点的度数之和为m,则e和m有______关系。 7. 设一棵二叉树的前序遍历序列和中序遍历序列均为ABC,则该二叉树的后序遍历序列为__BCA___。 8. 设一棵完全二叉树中有21个结点,如果按照从上到下、从左到右的顺序从1开始顺序编号,则编号为8的双亲结点的编号是___4_____,编号为8的左孩子结点的编号是____16_______。 9. 下列程序段的功能实现子串t在主串s中位置的算法,要求在下划线处填上正确语句。 int index(char s[ ], char t[ ]) {
i=j=0;
while(i<strlen(s) && j<strlen(t)) if(s[i]==t[j]){i=i+l; j=j+l;}else{i=_i_; j=__j__;} if (j==strlen(t))return(i-strlen(t));else return (-1); }