c语言数据结构试题模拟试卷
模拟试卷一
一、???????????????????? 单选题(每题 2 分,共20分)
1.???????? 以下数据结构中哪一个是线性结构?( 2 )
A. 有向图 B. 队列 C. 线索二叉树 D. B树
2.???????? 在一个单链表HL中,若要在当前由指针p指向的结点后面插入一个由q指向的结点,则执行如下( 4 )语句序列。
A. p=q; p->next=q; B. p->next=q; q->next=p;
C. p->next=q->next; p=q; D. q->next=p->next; p->next=q;
3.???????? 以下哪一个不是队列的基本运算?( 1 )
A. 在队列第i个元素之后插入一个元素 B. 从队头删除一个元素
C. 判断一个队列是否为空 D.读取队头元素的值
4.???????? 字符A、B、C依次进入一个栈,按出栈的先后顺序组成不同的字符串,至多可以组成( b )个不同的字符串?
A.14 B.5 C.6 D.8
5.?????? 由权值分别为3,8,6,2的叶子生成一棵哈夫曼树,它的带权路径长度为( b )。
A. 11 B.35 C. 19 D. 53
?
以下6-8题基于图1。
6.???????? 该二叉树结点的前序遍历的序列为( 3 )。
A.??????? E、G、F、A、C、D、B
B.??????? E、A、G、C、F、B、D
C.??????? E、A、C、B、D、G、F
D.??????? E、G、A、C、D、F、B
7.???????? 该二叉树结点的中序遍历的序列为( 1 )。
A. A、B、C、D、E、G、F
B. E、A、G、C、F、B、D
C. E、A、C、B、D、G、F
E.??????? B、D、C、A、F、G、E
8.?????? 该二叉树的按层遍历的序列为( 3 )。
A.E、G、F、A、C、D、B B. E、A、C、B、D、G、F
C. E、A、G、C、F、B、D D. E、G、A、C、D、F、B
9.?????? 下面关于图的存储的叙述中正确的是2 )。
A.用邻接表法存储图,占用的存储空间大小只与图中边数有关,而与结点个数无关
B.用邻接表法存储图,占用的存储空间大小与图中边数和结点个数都有关
C. 用邻接矩阵法存储图,占用的存储空间大小与图中结点个数和边数都有关
D.用邻接矩阵法存储图,占用的存储空间大小只与图中边数有关,而与结点个数无关
10.??? 设有关键码序列(q,g,m,z,a,n,p,x,h),下面哪一个序列是从上述序列出发建堆的结果?( 2 )
A. a,g,h,m,n,p,q,x,z B. a,g,m,h,q,n,p,x,z
C. g,m,q,a,n,p,x,h,z D. h,g,m,p,a,n,q,x,z
二、???????????????????? 填空题(每空1分,共26分)
1.?????? 数据的物理结构被分为_顺序、链表_、_索引_和_散列四种。
2.???????? 对于一个长度为n的顺序存储的线性表,在表头插入元素的时间复杂度为__o(n)______,在表尾插入元素的时间复杂度为_O(1)___________。
3.???????? 向一个由HS指向的链栈中插入一个结点时p时,需要执行的操作是p->next=HS,HS =p;;删除一个结点时,需要执行的操作是HS=HS->next(假设栈不空而且无需回收被删除结点)。
4.???????? 对于一棵具有n个结点的二叉树,一个结点的编号为i(1≤i≤n),若它有左孩子则左孩子结点的编号为__2i______,若它有右孩子,则右孩子结点的编号为_2i+1_______,若它有双亲,则双亲结点的编号为___2/i_____。
5.???????? 当向一个大根堆插入一个具有最大值的元素时,需要逐层_向上_______调整,直到被调整到根_位置为止。
6.???????? 以二分查找方法从长度为10的有序表中查找一个元素时,平均查找长度为___2.9_