当前位置: 首页 > news >正文

第八章排序 选择题

1.选择题

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

A.归并排序       B.冒泡排序        C.插入排序        D.选择排序

答案:C

2从未排序序列中挑选元素,并将其依次放入已排序序列(初始时为空)的一端的方法,称为  

A.归并排序       B.冒泡排序        C.插入排序        D.选择排序

答案:D

3对n个不同的关键字由小到大进行冒泡排序,在下列   情况下比较的次数最多。

A.从小到大排列好的                  B.从大到小排列好的   

 C.元素无序                          D.元素基本有序

答案:B

解释:对关键字进行冒泡排序,关键字逆序时比较次数最多。

4对n个不同的排序码进行冒泡排序,在元素无序的情况下比较的次数最多为  

A.n+1            B.n               C.n-1              D.n(n-1)/2

答案:D

解释:比较次数最多时,第一次比较n-1次,第二次比较n-2次……最后一次比较1次,即(n-1)+(n-2)++1= n(n-1)/2

5快速排序在下列   情况下最易发挥其长处。

A.被排序的数据中含有多个相同排序码  

B.被排序的数据已基本有序  

C.被排序的数据完全无序         

D.被排序的数据中的最大值和最小值相差悬殊

答案:C

解释:B选项是快速排序的最坏情况。

6对n个关键字作快速排序,在最坏情况下,算法的时间复杂度是  

A.O(n)           B.O(n2)            C.O(nlog2n)         D.O(n3)

答案:B

解释:快速排序的平均时间复杂度为O(nlog2n),但在最坏情况下,即关键字基本排好序的情况下,时间复杂度为O(n2)

7若一组记录的排序码为(46, 79,56,38,40,84),则利用快速排序的方法,以第一个记录为基准得到的一次划分结果为  

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

答案:C

8下列关键字序列中,   是堆。

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

答案:D

解释:D选项为小根堆

9堆是一种   排序。

A.插入         B.选择         C.交换          D.归并

答案:B

10堆的形状是一棵  

A.二叉排序树   B.满二叉树     C.完全二叉树    D.平衡二叉树

答案:C

11若一组记录的排序码为(46,79,56,38,40,84),则利用堆排序的方法建立的初始堆为  

A.79,46,56,38,40,84               B.84,79,56,38,40,46          

C.84,79,56,46,40,38               D.84,56,79,40,46,38

答案:B

12下述几种排序方法中,要求内存最大的是  

A.希尔排序        B.快速排序         C.归并排序       D.堆排序

答案:C

解释:堆排序、希尔排序的空间复杂度为O(1),快速排序的空间复杂度为O(log2n),归并排序的空间复杂度为O(n)

13下述几种排序方法中,   是稳定的排序方法。

A.希尔排序        B.快速排序         C.归并排序       D.堆排序

答案:C

解释:不稳定排序有希尔排序、简单选择排序、快速排序、堆排序;稳定排序有直接插入排序、折半插入排序、冒泡排序、归并排序、基数排序。

14数据表中有10000个元素,如果仅要求求出其中最大的10个元素,则采用(    )算法最节省时间。

A.冒泡排序        B.快速排序         C.简单选择排序   D.堆排序

答案:D

15下列排序算法中,   不能保证每趟排序至少能将一个元素放到其最终的位置上。

A.希尔排序        B.快速排序         C.冒泡排序       D.堆排序

答案:A

解释:快速排序的每趟排序能将作为枢轴的元素放到最终位置;冒泡排序的每趟排序能将最大或最小的元素放到最终位置;堆排序的每趟排序能将最大或最小的元素放到最终位置。

http://www.lryc.cn/news/587544.html

相关文章:

  • Linux 基础操作:vim 编辑器、网络配置与远程登录全解析
  • 算法-线性枚举
  • 【算法】贪心算法:摆动序列C++
  • 解决Qt中“known incorrect sRGB profile“警告的Photoshop修改方法
  • 【记录】BLE|百度的旧蓝牙随身音箱手机能配对不能连接、电脑能连接不能使用的解决思路(Wireshark捕获并分析手机蓝牙报文)
  • 一文读懂循环神经网络(RNN)—语言模型+n元语法(1)
  • Knife4j快速入门
  • 基于微信小程序的财务管理系统的设计与实现;账本管理系统的设计与实现
  • 云手机常见问题解析:解决延迟、掉线等困扰
  • Lovable - AI 驱动的全栈应用开发平台
  • 4G模块 A7670发送英文短信到手机
  • django parler 使用教程
  • Foundry 私钥管理指南:方法与安全最佳实践
  • es的自定义词典和停用词
  • aspnetcore Mvc配置选项中的ModelMetadataDetailsProviders
  • 幻想读 通过多版本并发控制(MVCC)和间隙锁(Gap Lock)的组合也能防止幻读具体说下
  • 基于R语言的极值统计学及其在相关领域中的实践技术应用
  • Linux RDMA Maillist patchsets (Jul. 7 - Jul. 13, 2025)
  • 【LeetCode240.搜索二维矩阵Ⅱ】以及变式
  • 传统机器学习在信用卡交易预测中的卓越表现:从R²=-0.0075到1.0000的华丽转身
  • 【Hadoop科普篇】大数据怎么处理?Hadoop是什么?跟HDFS, Spark, Flink, Hive, Hbase是什么关系?
  • React Three Fiber 实现 3D 模型视图切换、显隐边框、显隐坐标轴
  • JavaScript 性能优化实战:深入性能瓶颈,精炼优化技巧与最佳实践
  • 如何彻底解决PLM/ERP/MES等系统访问速度慢问题?
  • ThinkPHP 8 在 Apache 下启用伪静态
  • .NET 9 GUID v7 vs v4:时间有序性如何颠覆数据库索引性能
  • 【python实用小脚本-139】Python 在线图片批量下载器:requests+PIL 一键保存网络图像
  • Docker 拉取镜像并离线迁移至云桌面指南(以Redis为例)
  • 2025 春秋杯夏季个人挑战赛 Web
  • Spark SQL 之 UT