一、选择题

在对N个元素进行排序时,基于比较的算法中,其“最坏时间复杂度”中最好的是:

A、О(logN)
B、О(N)
C、О(NlogN)
D、О(N2^22)

快速排序的时间复杂度最好是O(nlogn),平均也是O(nlogn),这种情况是轴枢恰好能把两侧的分开。
时间复杂度最差是O(N2),最差的情况选择的轴枢在数组最左侧或是最右侧

对一组数据{ 2,12,16,88,5,10 }进行排序,若前三趟排序结果如下: 第一趟排序结果:2,12,16,5,10,88 第二趟排序结果:2,12,5,10,16,88 第三趟排序结果:2,5,10,12,16,88 则采用的排序方法可能是:

A、冒泡排序
B、希尔排序
C、归并排序
D、基数排序

就排序算法所用的辅助空间而言,堆排序、快速排序、归并排序的关系是:

A、堆排序 < 归并排序 < 快速排序
B、堆排序 > 归并排序 > 快速排序
C、堆排序 < 快速排序 < 归并排序
D、堆排序 > 快速排序 > 归并排序

有组记录的排序码为{46,79,56,38,40,84 },采用快速排序(以位于最左位置的对象为基准而)得到的第一次划分结果为:

A、{38,46,79,56,40,84}

B、{38,79,56,46,40,84}

C、{38,46,56,79,40,84}

D、{40,38,46,56,79,84}

对于序列{ 49,38,65,97,76,13,27,50 },按由小到大进行排序,下面哪一个是初始步长为4的希尔排序法第一趟的结果?

A、13,27,38,49,50,65,76,97
B、49,13,27,50,76,38,65,97
C、49,76,65,13,27,50,97,38
D、97,76,65,50,49,38,27,13

给出关键字序列{ 431, 56, 57, 46, 28, 7, 331, 33, 24, 63 },下面哪个选择是按次位优先(LSD)链式基数排序进行了一趟分配和收集的结果?

A、→331→431→33→63→24→56→46→57→7→28
B、→56→28→431→331→33→24→46→57→63→7
C、→431→331→33→63→24→56→46→57→7→28
D、→57→46→28→7→33→24→63→56→431→331

排序方法中,从未排序序列中依次取出元素与已排序序列中的元素进行比较,将其放入已排序序列的正确位置的方法称为:

A、插入排序
B、选择排序
C、快速排序
D、归并排序

对N个元素采用简单选择排序,比较次数和移动次数分别为:

A、O(N2N^2N2),O(N)
B、O(N),O(logN)
C、O(logN),O(N2N^2N2)
D、O(NlogN),O(NlogN)

在下列查找的方法中,平均查找长度与结点个数无关的查找方法是:

A、顺序查找
B、二分法
C、利用哈希(散列)表
D、利用二叉搜索树

设散列表的地址区间为[0,16],散列函数为H(Key)=Key%17。采用线性探测法处理冲突,并将关键字序列{ 26,25,72,38,8,18,59 }依次存储到散列表中。元素59存放在散列表中的地址是:

A、8
B、9
C、10
D、11

假定有K个关键字互为同义词,若用线性探测法把这K个关键字存入散列表中,至少要进行多少次探测?

A、K−1
B、K
C、K+1
D、K(K+1)/2

将元素序列{18,23,11,20,2,7,27,33,42,15}按顺序插入一个初始为空的、大小为11的散列表中。散列函数为:H(Key)=Key%11,采用线性探测法处理冲突。问:当第一次发现有冲突时,散列表的装填因子大约是多少?

A、0.27
B、0.45
C、0.64
D、0.73

给定散列表大小为17,散列函数为H(Key)=Key%17。采用平方探测法处理冲突:hi_ii​(k)=(H(k)±i2)%17将关键字序列{ 6, 22, 7, 26, 9, 23 }依次插入到散列表中。那么元素23存放在散列表中的位置是:

A、0
B、2
C、6
D、15

在散列表中,所谓同义词就是:

A、两个意义相近的单词
B、具有相同散列地址的两个元素
C、被映射到不同散列地址的一个元素
D、被不同散列函数映射到同一地址的两个元素

将10个元素散列到100000个单元的哈希表中,是否一定产生冲突?

A、一定会
B、可能会
C、一定不会
D、有万分之一的可能会

采用线性探测法解决冲突时所产生的一系列后继散列地址:

A、必须大于等于原散列地址
B、必须小于等于原散列地址
C、可以大于或小于但不等于原散列地址
D、对地址在何处没有限制

若用平方探测法解决冲突,则插入新元素时,以下陈述正确的是:

A、插入一定可以成功
B、插入不一定能成功
C、插入一定不能成功
D、若散列表容量为质数,插入就一定可以成功

将 {5, 2, 7, 3, 4, 1, 6} 逐个按顺序插入到初始为空的最小堆(小根堆)中。则该树的前序遍历结果为:

A、1, 3, 2, 5, 4, 7, 6
B、1, 2, 3, 4, 5, 7, 6
C、1, 2, 5, 3, 4, 7, 6
D、1, 3, 5, 4, 2, 7, 6

如果AVL树的深度为5(空树的深度定义为−1),则此树最少有多少个结点?

A、12
B、20
C、33
D、64

根据AVL树的概念——右子树总比左子树高度少一,可以给出如下递推公式
A(n)=A(n-1)+A(n-2)+1 ,且A(0)=1 A(1)=2
A0=1 A1=2 A2=4 A3=7 A4=12 A5=20

将数字 {10, 12, 1, 14, 6, 5, 8, 15, 3, 9, 7, 4, 11, 13, 2} 逐一插入一个初始为空的最小堆(小顶堆),得到的堆序列为:

A、1,3,2,12,6,4,8,15,14,9,7,5,11,13,10
B、1,2,3,4,5,6,7,8,9,10,11,12,13,14,15
C、1,2,3,6,7,5,4,15,14,12,9,10,11,13,8
D、1,3,2,6,7,5,4,15,14,12,9,10,11,13,8

设最小堆(小根堆)的层序遍历结果为{1, 3, 2, 5, 4, 7, 6}。用线性时间复杂度的算法将该堆调整为最大堆(大根堆),则该树的中序遍历结果为:

A、3, 5, 4, 2, 6, 1, 7
B、1, 4, 3, 7, 2, 6, 5
C、3, 5, 4, 7, 2, 6, 1
D、4, 1, 3, 7, 6, 2, 5

下图所示的 AOE 网表示一项包含 8 个活动的工程。活动 d 的最早开始时间和最迟开始时间分别是:

A、3 和 7
B、12 和 12
C、12 和 14
D、15 和 15

下列代码

if ( A > B ) {for ( i=0; i<N; i++ )for ( j=N*N; j>i; j-- )A += B;
}
else {for ( i=0; i<N*2; i++ )for ( j=N*2; j>i; j-- )A += B;
}

的时间复杂度是:

A、O(N)
B、O(N2N^2N2)
C、O(N3N^3N3)
D、O(N4N^4N4)

给定一个堆栈的入栈序列为{ 1, 2, ⋯, n },出栈序列为{ p1 , p2 , ⋯, pn }。如果p2 =n,则存在多少种不同的出栈序列?

A、n
B、n-1
C、2
D、1

设最小堆(小根堆)的层序遍历结果为{5, 18, 15, 28, 22, 42, 40}。用线性时间复杂度的算法将该堆调整为最大堆(大根堆),则该树的中序遍历结果为:

A、18, 28, 22, 15, 40, 5, 42
B、18, 28, 22, 42, 15, 40, 5
C、5, 22, 18, 42, 15, 40, 28
D、22, 5, 18, 42, 40, 15, 28

二、判断

如果从有向图 G 的每一点均能通过深度优先搜索遍历到所有其它顶点,那么该图一定不存在拓扑序列

要从50个键值中找出最大的3个值,选择排序比堆排序快。

对N个记录进行快速排序,在最坏的情况下,其时间复杂度是O(NlogN)。

希尔排序是稳定的算法。

对N个不同的数据采用冒泡排序进行从大到小的排序,当元素基本有序时交换元素次数肯定最多。

在散列表中,所谓同义词就是被不同散列函数映射到同一地址的两个元素。

将M个元素存入用长度为S的数组表示的散列表,则该表的装填因子为M/S。

若用平方探测法解决冲突,则插入新元素时,若散列表容量为质数,插入就一定可以成功。

任何最小堆中从根结点到任一叶结点路径上的所有结点是有序的(从小到大)。

无向连通图至少有一个顶点的度为1。

本人争议

(logN)2(logN)^2(logN)2是O(N)的

不hi

所谓“循环队列”是指用单向循环链表或者循环数组表示的队列。

将向量空间想象为一个首尾相接的圆环,并称这种向量为循环向量。存储在其中的队列称为循环队列(Circular Queue)。这种循环队列可以以单链表的方式来在实际编程应用中来实现。因此,循环队列是一个抽象的数据结构,而单向循环链表或循环数组是具体的实现方式,不是数据结构本身。
另一种说法 : 循环队列指的是后者,用数组表示的队列,利用求余数运算使得头尾相接

数据结构复习题集(客观题)相关推荐

  1. 数据结构算法集---C++语言实现

    /// // // // 堆栈数据结构 stack.h // // // /// #include<iostream.h> template<class Type>class ...

  2. 严蔚敏版《数据结构 (C语言版)》和《数据结构题集》(一)

    这里用的是严蔚敏版<数据结构 (C语言版)>和<数据结构题集>,深感自己的代码写得又渣又无力,打算把这本书好好琢磨透彻,里面的算法和模板都实现一遍,题目也都做一遍.最终能够做到 ...

  3. c语言中用于判断ch是否是字符的表达式,最新C语言复习题集资料

    精品文档 C语言复习题集 一. 判断题 1-1.C语言程序是从源文件的第一条语句开始执行的. 正确答案:F 1-2.C语言中的变量名不区分大小写. 正确答案:F 1-3.若变量定义为double x; ...

  4. 一建机电实务教材电子版_20年一建其实并不难,官方出版:复习题集(精修),速做速提90分...

    20年一建其实并不难,官方出版:复习题集(精修),速做速提90分 一建法规+管理+经济+建筑+市政+机电+水利等 根据<一-级建造师执业资格考试大纲>(2018 年版) 和<2020 ...

  5. 数据结构复习题(线性表)

    数据结构复习题(线性表) 线性表 选择题 填空题 判断题 解答题 顺序表的插入和删除 单链表的插入与删除,创建 线性表 选择题 用单链表方式存储的线性表,存储每个节点需要两个域,一个是数据域,另一个是 ...

  6. MOOC浙大数据结构课后题记录——PTA数据结构题目集(全)

    目录 第一周--最大子列和算法.二分查找 01-复杂度1 最大子列和问题 (20分) 01-复杂度2 Maximum Subsequence Sum (25分) 01-复杂度3 二分查找 (20分) ...

  7. 数据结构复习题(绪论)

    数据结构复习题(绪论) 绪论 选择题 填空题 简答题 判断题 绪论 选择题 线性结构中数据元素的位置之间存在( A )的关系 A.一对多 B.一对一 C.多对多 D.每一个元素都有一个直接前驱和一个直 ...

  8. c语言算法集,【二级C语言】数据结构算法集---C  语言实现

    蜡烛马区新固动工八拐怪状小城,小城炮兵会晒茶麸领子.冒算心头画行启脾沙拉,壮志骗人淡漠流生宣布木锯南政新车?猛料妙绝长亭浓味寺塔马兜放领理光.普特民师初生情境民寿流传灭绝!勤恳心曲修整拭除转子苛评. ...

  9. 浙大数据结构题集02-线性结构2 一元多项式的乘法与加法运算python版

    浙大数据结构题集02-线性结构2 一元多项式的乘法与加法运算python版 设计函数分别求两个一元多项式的乘积与和. 本文用链表做的 输入格式: 输入分2行,每行分别先给出多项式非零项的个数,再以指数 ...

最新文章

  1. (98)Address already in use: make_sock: could not bind to address 0.0.0.0:80
  2. 静默安装Azure CLI
  3. 卷积神经网络之 - Lenet
  4. LL-verilog 1000HZ分频为1HZ使用三个十位计数器合成
  5. 超简单:解析 yml 类型(application.yml)配置文件 、springboot 工程读取 yml 文件中的值
  6. 计算机网络——OSI参考模型和网络的排错
  7. eclipse中添加aptana插件(html.css.js自动提示)
  8. 未能写入输出文件拒绝访问
  9. 增强for循环(foreach解析)—带冒号的for循环
  10. etcd 及 etcd 在 k8s中的用法
  11. thinkserver TS250安装centos7.5经验
  12. 73.【JavaWeb-01】
  13. [每日一氵] 正则表达式以x开头,以x结尾的字符串
  14. **将古典融汇到现代(二)一座连接蕴涵式和三段论的桥--皮尔斯逻辑之五**
  15. vue+echarts平面地图和飞线
  16. java中设置游戏的倒计时_java中关于倒计时的程序
  17. MBR分区的恢复 - 数据恢复
  18. 各种证件照片规格,值得收藏!!!
  19. 7项目管理--项目成本管理
  20. 英雄远征Erlang源码分析(6)-玩家进程初始化和玩家模块相关方法

热门文章

  1. 计算机应用基础95页自荐信,计算机应用基础自荐书.doc
  2. Vue2---全局事件总线
  3. ESP8266物联网开发小板开箱
  4. 毕业设计 房间人数计数系统(红外热释电) - 单片机 物联网 嵌入式
  5. 趣味博弈论 -- 阶梯博弈
  6. OpenLayers加载谷歌地球离线瓦片地图
  7. vscode安装code runner后运行程序出现乱码解决办法 �밴���������. . .
  8. 工艺夹具-减速箱体零件工艺规程及加工φ52H8孔夹具设计(论文+说明书+工艺卡+外文翻译+CAD图纸)
  9. 瑞芯微RK3128盒子刷机提示测试设备失败的解决方法:MASKROM模式
  10. 数据库被占用怎么办?