从某位大佬那里搞来的数据结构基本的笔试题

1.下列的排序算法中,初始数据集的排列顺序对算法的性能无影响的是(B)
A、插入排序 B、堆排序 C、冒泡排序 D、快速排序
2.在操作系统中最常用来被作为存储文件关系的数据结构是(D)
A、链表 B、数组 C、堆栈 D、树
3.在一个具有n个顶点的无向图中,要连通全部顶点至少需要(B)条边。
A、N B、N-1 C、N+1 D、N/2
4.下面哪一种操作不是 stack 的基本操作?(D)
A、入栈 B、出栈 C、检查是否为空 D、排序栈中元素
5.请问对一个排好序的数组进行查找,时间复杂度为(B)
A、O(n) B、O(lgn) C、O(nlgn) D、O(1)
6.以下排序算法是非稳定排序的是(BCD)
A、冒泡排序 B、归并排序 C、快速排序 D、堆排序 E、希尔排序
7.一个栈的入栈序列是A、B、C、D、E,则栈的不可能的输出序列是(C)
A、EDCBA B、DECBA C、DCEAB D、ABCDE
8.下面哪项不是链表优于数组的特点?(D)
A、方便删除 B、方便插入 C、长度可变 D、存储空间小
9.下列四种排序中(A)的空间复杂度最大
A、快速排序 B、冒泡排序 C、希尔排序 D、堆
10.以下关于链式存储结构的叙述中哪一条是不正确的C
A、结点除自身信息外还包括指针域,因此存储密度小于顺序存储结构
B、逻辑上相邻的结点物理上不必邻接
C、可以通过计算直接确定第i个结点的存储地址
D、插入、删除运算操作方便,不必移动结点
存储密度=(结点数据本身占的存储量)/(结点整体占的数据量)
11.设一棵二叉树的深度为k,则该二叉树最多有(D)个节点。
A、2k-1 B、2^k C、2^(k-1) D、2^k-1
12.对初始状态为递增序列的数组按递增顺序排序,最省时间的是插入排序算法,最费时间的算法(B)
A、堆排序 B、快速排序 C、插入排序 D、归并排序
13.在有序双向链表中定位删除一个元素的平均时间复杂度为(A)
A、O(1) B、O(N) C、O(logN) D、O(NlogN)
14.判断一个单向链表中是否存在环的最佳方法是(B)
A、两重遍历 B、快慢指针 C、路径记录 D、哈希表辅助
15.按照升序排列的一组数据123456798,下面哪种排序法在空间和时间上最优?C
A、快速排序 B、冒泡排序 C、插入排序 D、堆排序
16. 下述几种排序方法中,要求内存最大的是( C )
A. 插入排序 B.快速排序 C. 归并排序 D. 选择排序
17.堆是一种 ( B )排序。
A. 插入 B.选择 C. 交换 D. 归并
18.在最好情况下,下列排序算法中(AD)排序算法所需比较关键字次数最少。
A.冒泡 B.归并 C.快速 D.直接插入
19.排序方法中,从未排序序列中依次取出元素与已排序序列(初始时为空)中的元素进行比较,将其放入已排序序列的正确位置上的方法,称为( C )
A. 希尔排序 B. 冒泡排序 C. 插入排序 D. 选择排序
20.数据库里建索引常用的数据结构是(C)
A、链表 B、队列 C、树 D、哈希表
21.链表不具备的特点是 A
A 可随机访问任何一个元素 B 插入、删除操作不需要移动元素
C 无需事先估计存储空间大小 D 所需存储空间与线性表长度成正比
22.一个栈的输入序列为123…n,若输出序列的第一个元素是n,输出第i(1<=i<=n)个元素是(B)
A、不确定
B、n-i+1
C、i
D、n-i
23.在排序方法中,元素比较次数与元素的初始排列无关的是(D)
A、Shell 排序 B、归并排序 C、直接插入排序 D、选择排序
A、C肯定不选的,归并排序的在merge中是跟序列有关,如果有序,比较次数最少n/2,最糟是元素错落n-1。而选择排序比较次数与关键字的初始状态无关,总的比较次数N=(n-1)+(n-2)+…+1=n
(n-1)/2。所以 应该是选择排序!
24.当很频繁地对序列中部进行插入和删除操作时,应该选择使用的容器是(B)
A、vector B、list C、deque D、stack
25.外部排序常用的算法? A
A、归并排序 B、快速排序 C、堆排序 D、希尔排序
26.在对空间和时间都有限制的实时系统中,常使用的排序算法?B
A、插入排序 B、堆排序 C、快速排序 D、归并排序
27.已知一个线性表(38,25,74,63,52,48),假定采用散列函数h(key) = key%7计算散列地址,并散列存储在散列表A【0…6】中,若采用线性探测方法解决冲突,则在该散列表上进行等概率成功查找的平均查找长度为(C)
A、1.5 B、1.7 C、2.0 D、2.3
28.串ababaaababaa的next的函数值为(C)。KMP算法中的next数组
A.012345678999
B 012121111212
C.011234223456
D.0123012322345
T ababaaaba 011234223
T abcabx 011123
29.若查找每个记录的概率均等,则在具有n个记录的连续顺序文件中采用顺序查找法查找一个记录,其平均查找长度ASL为©
A.(n1)/2 B.n/2 C.(+1)/2 D.n
30.将长度为n的单链表接到长度为m的单链表后面的算法的时间复杂度为©
   A.O(1) B.O(n) C.O(m) D.O(n+m)
31.适用于折半查找的表的存储方式及元素排列要求为(?D???)???
??A.链接方式存储,元素无序???B.链接方式存储,元素有序?C.顺序方式存储,元素无序???D.顺序方式存储,元素有序
32.在待排序的元素序列基本有序的前提下,效率最高的排序方法是(冒泡排序)
在最坏情况下,下列顺序方法中时间复杂度最小的是(堆排序)
希尔排序法属于(插入类排序)
堆排序法属于(选择类排序)
33.在下列几种排序方法中,要求内存量最大的是(归并排序)?
34.已知数据表A中每个元素距其最终位置不远,为节省时间,应采用(直接插入排序)
35.与单向链表相比,双向链表的优点之一是(更容易访问相邻结点)
36.在单链表中,增加头结点的目的是(方便运算的实现)
37.循环链表的主要优点是(从表中任一结点出发都能访问到整个链表)


作者:腾腾
来源:CSDN
原文:https://blog.csdn.net/u012590688/article/details/45561843
版权声明:本文为博主原创文章,转载请附上博文链接!

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值