历年数据结构考题

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

本卷包括如下题型:

一、单项选择题

数据结构考题

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

(  A  )
1、从未排序序列中依次取出一个元素与已排序序列中的元素依次进行比较,然后将其放在已排序序列的合适位置,该排序方法称为( A )排序法。
A、插入
B、选择
C、希尔
D、二路归并
(  D  )
2、对于有n 个结点的二叉树, 其高度为( D )
A、nlog2n
B、log2n
C、「log2n」+1
D、不确定
(  C  )
3、高度为 K 的二叉树最大的结点数为( )
A、2k
B、2k-1
C、2k -1
D、2k-1-1
(  C  )
4、(10分)下列列不为堆的是(C)。
A、75,45.65,30,15,25
B、75,65,45,30.25.15
C、75,65,30,15,25,.45
D、75,45,65,25,30,15
(  C  )
5、(4分) 栈中有a、b和c三个元素,a是栈底元素,c是栈顶元素,元素d等待进栈,则不可能的出栈序列是(C)。
A、dcba
B、cbda
C、cadb
D、cdba
(  A  )
6、在带头结点的循环链表中,将头指针改设为尾指针(rear)后,其头结点和尾结点的存储位置分别是()。
A、rear和rear->ext->next
B、rear->next和rear
C、rear->next->next和rear
D、rear和rear->next
(  B  )
7、下面关于串的叙述中,哪个是不正确的?()。
A、串是字符的有限序列
B、空串是由空格构成的串
C、模式匹配是串的一种重要运算
D、串既可以采用顺序存储,也可以采用链式存储
(  C  )
8、以下说法正确的是()。
A、线性结构的基本特征是:每个结点有且仅有一个直接前驱和一个直接后继
B、线性表的各种基本运算在顺序存储结构上的实现均比在链式存储结构上的实现效率要低
C、在线性表的顺序存储结构中,插入和删除元素时,移动元素的个数与该元素位置有关
D、顺序存储的线性表的插入和删除操作不需要付出很大的代价,因此平均操作只有近一半的元素需要移动
(  D  )
9、循环队列为空队列的条件是:
A、Q.front=0
B、Q.(rear+1)%MaxSize==Q.front
C、Q.rear=0
D、Q.rear==Q.front
(  A  )
10、对n个不同的排序码进行冒泡(递增)排序,在下列( )情况比较的次数最多
A、从大到小排列好的
B、从小到大排列好的
C、元素无序
D、元素基本有序
(  A  )
11、一棵具有N个结点的二叉树采用二叉链表进行存储,其中空指针域有
A、N+1
B、N
C、N-1
D、不确定
(  A  )
12、索引顺序表的特点是顺序表中的数据
A、有序
B、无序
C、块间有序
D、散列
(  B  )
13、在一个长度为n的顺序表中,在第i个元素(1≤i≤n+1)之前插入一个新元素时须向后移动( )个元素。
A、n-i
B、n-i+1
C、n-i-1
D、I
(  C  )
14、设有一个10阶的对称矩阵A,采用压缩存储方式,以行序为主存储,a11为第一元素,其存储地址为1,每个元素占一个地址空间,则a85的地址为( )。
A、13
B、32
C、33
D、40
(  A  )
15、队列的特点是()。
A、先进先出
B、后进先出
C、先进后出
D、不进不出
(  A  )
16、顺序栈是空栈的条件是( )。
A、top==0
B、top==1
C、top==-1
D、top==m
(  D  )
17、在一个具有n个顶点和e条边的无向图的邻接矩阵中,表示边存在的元素(又称为有效元素)的个数为( )。
A、n
B、ne
C、e
D、2e
(  D  )
18、下列叙述中正确的是()
A、循环队列有队头和队尾两个指针,因此,循环队列是非线性结构
B、在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况
C、在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况
D、循环队列中元素的个数是由队头指针和队尾指针共同决定
(  A  )
19、下列叙述中正确的是()。
A、对数据进行压缩存储会降低算法的空间复杂度
B、算法的优化主要通过程序的编制技巧来实现
C、算法的复杂度与问题的规模无关
D、数值型算法只需考虑计算结果的可靠性
(  A  )
20、设二叉树共有 375 个结点,其中度为 2 的结点有 187 个。则度为 1 的结点个数是()。
A、0
B、1
C、188
D、不可能有这样的二叉树
(  C  )
21、下列结构中属于非线性结构的是()
A、循环队列
B、二维数组
C、二叉链表
D、双向链表
(  A  )
22、连续存储设计时,存储单元的地址( )。
A、一定连续
B、一定不连续
C、不一定连续
D、部分连续,部分不连续
(  D  )
23、设无向图G中有n个顶点e条边,则其对应的邻接表中的表头结点和表结点的个数分别为( )。
A、n,e
B、e,n
C、2n,e
D、n,2e
(  C  )
24、求单链表中当前结点的后继和前趋的时间复杂度分别是( )。
A、O(n)和O(1)
B、O(1)和O(1)
C、O(1)和O(n)
D、O(n)和O(n)
(  D  )
25、下列关于哈希函数的说法正确的是()
A、哈希函数越复杂越好
B、哈希函数越简单越好
C、用除余法构造的哈希函数是最好的
D、在冲突尽可能少的情况下,哈希函数越简单越好
(  A  )
26、与数据元素本身的形式、内容、相对位置、个数无关的是数据的( )。
A、逻辑结构
B、存储结构
C、逻辑实现
D、存储实现
(  C  )
27、在一个链队列中, front和rear分别为队头指针和队尾指针,则插入一个结点s的操作为( )。 (4.0分)
A、front=front.next;
B、s.next=rear;rear=s;
C、rear.next=s;rear=s;
D、s.next=front;front=s;
(  B  )
28、在顺序表中,只要知道( ),就可以快速求出任意一个结点的存储地址。 (3.0分)
A、结点所占用的存储长度
B、基地址和结点所占用的存储长度
C、基地址
D、数据元素个数
(  A  )
29、一个队列的进队序列为:a,b,c,d,则出队序列是: ( )。
A、a,b,c,d
B、d,c,a,b
C、a,d,b,c
D、c,a,d,b
(  B  )
30、广义表((a),a)的表尾是( )。
A、a
B、(a)
C、()
D、((a))
(  D  )
31、二叉数有1000个结点,它的深度至少为( )。
A、7
B、8
C、9
D、10
(  A  )
32、函数substr(“DATASTRUCTURE”,5,9)的返回值为( )。
A、“STRUCTURE”
B、“DATA”
C、“ASTRUCTUR”
D、“DATASTRUCTURE”
(  B  )
33、设有序表中有1000个元素,则用二分查找查找元素X最多需要比较( )次。
A、25
B、10
C、7
D、1
(  D  )
34、设一棵4叉树中有N1个度数为1的结点,N2个度数为2的结点,……,N4个度数为4的结点,则该树中共有( )个叶子结点。
A、N1+N2
B、N1+2*N2+3*N3
C、N2+N3+4*N4
D、N2+2*N3+3*N4+1
(  D  )
35、下列关键字序列中,( )是堆。
A、16,72,31,23,94,53
B、94,23,31,72,16,53
C、16,53,23,94,31,72
D、16,23,53,31,94,72
(  C  )
36、k = m *n ;For(i = 0; i < k ; i++) i++;
A、O(m)
B、O(n)
C、O(m*n)
D、O(i)
(  B  )
37、i = 0;S = 0;While(s < n) s += i++;
A、O(1)
B、O(n^(1/2))
C、O(n)
D、O(n^2)
(  B  )
38、i = 1;While(i <= n) i = i * 3;
A、O(1)
B、O(logn)
C、O(n)
D、O(n^(1/2))
(  D  )
39、用二分查找法查找具有n个结点的顺序表时,查找每个结点的平均比较次数是( )。 (5.0分)
A、O(n2)
B、O(nlgn)
C、O(n)
D、O(lon)
(  C  )
40、栈和队列都是()。(1分)
A、链式存储的线性结构
B、链式存储的非线性结构
C、限制存取点的线性结构
D、限制存取点的非线性结构
(  A  )
41、已知一个有序表为(11,22,33,44,55,66,77,88,99),则折半查找55需要比较( )次。(1分)
A、1
B、2
C、3
D、4
(  C  )
42、两类存储结构为( )
A、线性结构和非线性结构
B、逻辑结构和非逻辑结构
C、顺序结构和链式结构
D、逻辑结构和物理结构
(  A  )
43、一维数组与线性表的区别是( )
A、前者长度固定,后者长度可变
B、两者长度均固定
C、后者长度固定,前者长度可变
D、两者长度均可变
(  A  )
44、栈通常采用的两种存储结构是( )
A、顺序存储结构和链式存储结构
B、散列方式和索引方式
C、链式存储结构和数组
D、线性存储结构和非线性存储结构
(  B  )
45、在解决计算机主机与打印机之间速度不匹配问题时,通常设置一个打印机数据缓冲区,主机将要输出的数据依次写入该缓冲区,打印机则从该缓冲区中取出数据打印。该缓冲区应该是一个( )结构
A、栈
B、队列
C、树
D、线性表
(  A  )
46、对于顺序存储的栈和队列,进行插入和删除的算法的时间复杂度为( )
A、O(1)
B、O(n)
C、O(n^2)
D、无法确定
(  C  )
47、由 3 个结点所构成的二叉树有( )种形态
A、1
B、3
C、5
D、7
(  B  )
48、以下说法错误的是( )
A、存在这样的二叉树,对它采用任何次序遍历其结点访问序列均相同
B、普通二叉树只能用链式存储结构存储
C、由树转换成二叉树,其根结点的右子树总是空的
D、在二叉树只有一棵子树的情况下也要明确指出该子树是左子树还是右子树
(  A  )
49、已知一个有向图的边集为{,,,,,}, 则由该图产生的一种可能的拓扑序列为( )
A、A,b,c,d,e
B、a,b,d,e,b
C、A,c,b,e,d
D、a,c,d,b,e
(  D  )
50、判定一个顺序栈ST(最多元素为m0)为栈满的条件是
A、top!=0
B、top= =0
C、top!=m0
D、top= =m0-1