数据结构

本试卷为数据结构,题目包括:单项选择题。

本卷包括如下题型:

一、单项选择题

数据结构

一、单项选择题 (共50题,每题2分,共计100分)

(  C  )
1、下列关于算法输出的叙述中,正确的是( )。
A、算法一定没有输出
B、算法可以没有输出
C、算法至少有一个输出
D、算法必须有多个
(  A  )
2、对数据进行顺序存储时,存储单元的地址( A )。
A、一定连续
B、一定不连续
C、不一定连续
D、部分连续,部分不连续
(  B  )
3、线性表是一个有限序列, 组成线性表的基本单位是(B)。
A、数据项
B、数据元素
C、数据域
D、字符
(  C  )
4、(4分)判定一个队列QU (最多元素为m)为空的条件是(C)。
A、QU->rear-QU->front==m
B、QU->rear-QU->front-1==m
C、QU->front==QU->rear
D、QU-> front= =QU->rear+1
(  C  )
5、设深度为k (k>=1) 的二叉树中只有度为和度为2的结点,则该:二叉树中所包含的结点数至少是(C)。
A、k+1
B、2k+1
C、2k-1
D、2k
(  D  )
6、设散列表长m=13.散列函数h (key). =key%11。 表中已有4个结点: h (15) =4, h (27) =5,h (39) =6,h(51) =7,其余地址为空,若采用二C次探查法处理冲突,则关键字为49的结点地址是(D)。
A、3
B、5
C、8
D、9
(  C  )
7、对含有 10 个数据元素的有序查找表执行折半查找,当查找失败时,至少需要比较( )次。
A、2
B、3
C、4
D、5
(  C  )
8、在一个具有n个单元的顺序栈中,假定以地址低端(即0单元)作为栈底,以top作为栈顶,当做出栈处理时,top变化为()。
A、top不变
B、top=0
C、top—
D、top++
(  D  )
9、算法的空间复杂度是指(
A、执行算法程序所占的存储空间
B、算法程序中的指令条数
C、算法程序的长度
D、算法执行过程中所需要的存储空间
(  A  )
10、若长度为n的线性表采用顺序存储结构,在其第i个位置插入一个新元素的算法的时间复杂度为
A、O(n)
B、O(0)
C、O(1)
D、O(n^2)
(  C  )
11、设广义表L=((a,b,c)),则L的长度和深度分别为( )。
A、1和1
B、1和3
C、1和2
D、2和3
(  B  )
12、串下面关于串的的叙述中,( )是不正确的?
A、串是字符的有限序列
B、空串是由空格构成的串
C、模式匹配是串的一种重要运算
D、串既可以采用顺序存储,也可以采用链式存储
(  D  )
13、下面程序段的时间复杂性的量级为()。Int fun(int n){I=1,s=1;While(s
A、O(n/2)
B、O(logn)
C、O(n)
D、O(n1/2)
(  C  )
14、在一个具有n个顶点的无向图中,要连接全部顶点至少需要( )条边。
A、n
B、n+1
C、n-1
D、n/2
(  B  )
15、若广义表A满足heaD(A)=tail(A),则A为( )。
A、( )
B、(())
C、((),())
D、((),(),())
(  A  )
16、算法的有穷性是指()。
A、算法程序的运行时间是有限的
B、算法程序所处理的数据量是有限的
C、算法程序的长度是有限的
D、算法只能被有限的用户使用
(  A  )
17、下列叙述中正确的是()。
A、在栈中,栈顶指针的动态变化决定栈中元素的个数
B、在循环队列中,队尾指针的动态变化决定队列的长度
C、在循环链表中,头指针和链尾指针的动态变化决定链表的长度
D、在线性链表中,头指针和链尾指针的动态变化决定链表的长度
(  A  )
18、设顺序表的长度为 n。下列排序方法中,最坏情况下比较次数小于 n(n-1)/2 的是()。
A、堆排序
B、快速排序
C、简单插入排序
D、冒泡排序
(  D  )
19、设一组权值集合W=(15,3,14,2,6,9,16,17),要求根据这些权值集合构造一棵哈夫曼树,则这棵哈夫曼树的带权路径长度为( )。。
A、129
B、219
C、189
D、229
(  B  )
20、设连通图G中的边集E={(a,b),(a,e),(a,c),(b,e),(e,d),(d,f),(f,c)},则从顶点a出发可以得不到一种深度优先遍历的顶点序列为( )。
A、abedfc
B、acfebd
C、aebdfc
D、aedfcb
(  C  )
21、设指针变量front表示链式队列的队头指针,指针变量rear表示链式队列的队尾指针,指针变量s指向将要入队列的结点X,则入队列的操作序列为( )。
A、front->next=s;front=s;
B、s->next=rear;rear=s;
C、rear->next=s;rear=s;
D、s->next=front;front=s;
(  A  )
22、在一棵平衡二叉树中,每个结点的平衡因子的取值范围是( )。
A、-1~1
B、-2~2
C、1~2
D、0~1
(  C  )
23、对数据序列{15,9,7,8,20,-1,4}进行排序,进行一趟后数据的排序变为{9,15,7,8,20,-1,4},则采用的是( )算法。
A、简单选择排序
B、冒泡排序
C、直接插入排序
D、堆排序
(  A  )
24、序列{3,2,4,1,5,6,8,7}是第一趟递增排序后的结果,则采用的排序方法可能是( )。
A、快速排序
B、冒泡排序
C、堆排序
D、简单选择排序
(  A  )
25、下列4种基本逻辑结构中,数据元素之间关系最弱的是( )。
A、集合
B、线性结构
C、树形结构
D、图形结构
(  A  )
26、在一个单链表中,删除p所指结点的直接后继的操作是
A、p->next=p->next->next;
B、p=p->next;p->next=p->next->next;
C、p->next=p->next;
D、p=p->next->next;
(  A  )
27、下列有关线性表的叙述中,正确的是
A、线性表中的元素之间是线性关系
B、线性表中至少有一个元素
C、线性表中任何一个元素有且仅有一个直接前趋
D、线性表中任何一个元素有且仅有一个直接后继
(  B  )
28、一个递归算法必须包括( )。 (4.0分)
A、递归部分
B、终止条件和递归部分
C、迭代部分
D、终止条件和迭代部分
(  A  )
29、在一个含n个顶点和e条边的有向图的邻接矩阵中,表示边存在的元素的个数为( )。 (5.0分)
A、e
B、2e
C、n2-e
D、n2-2e
(  B  )
30、设a,b为一颗二叉树的两个结点,在中序遍历时,a在b前面的条件是( )。 (3.0分)
A、a在b的右方
B、a在b的左方
C、a是b的祖先
D、a是b子孙
(  C  )
31、线性表是n个( )的有限序列。
A、表元素
B、字符
C、数据元素
D、数据项
(  B  )
32、一个顺序表的第一个元素的存储地址是90,每个元素的长度为2,则第6个元素的存储地址是( )。
A、98
B、100
C、102
D、106
(  B  )
33、带头结点的单链表head为空的判定条件是( )。
A、head==NULL
B、head->next==NULL
C、head->next!=NULL
D、head!=NULL
(  B  )
34、广义表(a,b,c)的表尾是( )。
A、b,c
B、(b,c)
C、c
D、(c)
(  C  )
35、对n个记录的文件进行快速排序,所需要的辅助存储空间大致为。
A、O(1)
B、O(n)
C、O(1ogn)
D、O(n^2)
(  A  )
36、设有序顺序表中有n个数据元素,则利用二分查找法查找数据元素X的最多比较次数不超过( )。
A、log2(n) + 1
B、log2(n) - 1
C、log2(n)
D、log2(n+1)
(  B  )
37、设一棵m叉树中度数为0的结点数为N0,度数为1的结点数为Nl,……,度数为m的结点数为Nm,则N0=( )。
A、Nl+N2+……+Nm
B、l+N2+2N3+3N4+……+(m-1)Nm
C、N2+2N3+3N4+……+(m-1)Nm
D、2Nl+3N2+……+(m+1)Nm
(  D  )
38、设一组初始记录关键字序列为(Q,H,C,Y,P,A,M,S,R,D,F,X),则按字母升序的第一趟冒泡排序结束后的结果是( )。
A、F,H,C,D,P,A,M,Q,R,S,Y,X
B、P,A,C,S,Q,D,F,X,R,H,M,Y
C、A,D,C,R,F,Q,M,S,Y,P,H,X
D、H,C,Q,P,A,M,S,R,D,F,X,Y
(  C  )
39、堆的形状是一棵( )。
A、二叉排序树
B、满二叉树
C、完全二叉树
D、平衡二叉树
(  C  )
40、如果X是二叉中序线索中有一个左孩子的结点,且X不为根,则X的前驱为( )。
A、X的双亲
B、X的右子树中最左的结点
C、X的左子树中最右的结点
D、X的左子树中最右叶结点
(  C  )
41、一组记录的关键字为(46,79,56,38,40,84),则利用快速排序的方法,以第一个记录为支点得到的一次划分结果为( )。 (2.0分)
A、(38,40,46,56,79,84)
B、(40,38,46,79,56,84)
C、(40,38,46,56,79,84)
D、(40,38,46,84,56,79)
(  B  )
42、在进栈运算时,应先判别栈是否 ①,在出栈运算时.应先判别栈是否②,①②处应该是( )
A、空,满
B、满,空
C、满,上溢
D、空,下溢
(  B  )
43、在一个顺序循环队列中,队尾指向队尾元素的( )位置。
A、前一个
B、后一个
C、当前
D、最后
(  C  )
44、树中所有结点的度等于所有结点数加( )。
A、0
B、1
C、-1
D、2
(  B  )
45、一棵树的广义表表示为 a(b(c),d(e(g(h)),f,k)),则该树中 e 结点的孩子结点个数为( )
A、0
B、1
C、2
D、3
(  C  )
46、在一棵二叉树上第 5 层的结点数最多为( )
A、8
B、15
C、16
D、32
(  A  )
47、n 个顶点的强连通图至少有( )条边。
A、n
B、n-1
C、n+1
D、n×(n-1)
(  B  )
48、连通分量是无向图中的( )连通子图。
A、极小
B、极大
C、最小
D、最大
(  A  )
49、具有4个顶点的无向完全图有____条边
A、6
B、12
C、16
D、20
(  A  )
50、对于一个具有n个顶点和e条边的无向图,若采用邻接表表示,则表头向量的大小为
A、n
B、n+1
C、n-1
D、n+e