计算机软件技术基础

在下列算法中,()算法可能出现下列情况:在最后一趟开始之前,所有的元素都不在其最终的位置上。A、堆排序B、冒泡排序C、插入排序D、快速排序

题目

在下列算法中,()算法可能出现下列情况:在最后一趟开始之前,所有的元素都不在其最终的位置上。

  • A、堆排序
  • B、冒泡排序
  • C、插入排序
  • D、快速排序
参考答案和解析
正确答案:C
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

以下排序算法中,()在最后一趟排序结束之前可能所有元素都没有放到其最终位置上。

A、快速排序

B、希尔排序

C、堆排序

D、冒泡排序


答案:B

第2题:

下列排序算法中,某一趟结束后未必能选出一个元素放在其最终位置上的是(14)

A.堆排序

B.冒泡排序

C.快速排序

D.直接插入排序


正确答案:D
解析:此题考的是各种排序算法。

第3题:

在下列排序方法中,每一趟排序结束后都能选出一个元素放在其最终位置上的是_______。

A、简单选择排序

B、起泡排序

C、快速排序

D、直接插入排序

E、堆排序


正确答案:ABCE

第4题:

下列排序算法中,某一趟结束后未必能选出一个元素放在其最终位置上的是【】

A.直接插入排序

B.冒泡排序

C.快速排序

D.堆排序


正确答案:A
[解析]B、C、D三种排序在一趟排序结束后都能选出一个元素,放在其最终位置上,只有插入排序,做一趟排序完成的是把当前待排序列中的第一个元素插入到有序序列的适当位置,但并不能保证这个位置是最终位置.

第5题:

在第一趟排序之后,一定能把数据表中最大或最小元素放在其最终位置上的排序算法是______。

A.冒泡排序

B.基数排序

C.快速排序

D.归并排序


正确答案:A
解析:对于选项A,冒泡排序将被排序的记录数组R[1..n)垂直排列,每个记录R[i]看作是重量为ki的气泡。根据轻气泡不能在重气泡之下的原则,从下往上扫描数组R凡扫描到违反本原则的轻气泡,就使其向上“飘浮”。如此反复进行,直到最后任何两个气泡都是轻者在上,重者在下为止。由此可见,冒泡排序第1趟排序之后,最轻的“气泡”一定会被浮到最上面,即能把数据表中最大或最小元素放在其最终位置上。故本题应该选择A。对于选项B,基数排序的基本思想是:从低位到高位依次对待排序的关键码进行分配和收集,经过d趟分配和收集,就可以得到一个有序序列。所以,基数排序第1趟排序之后,得到的是以数据表中各元素的个位进行排序的结果,不一定能把数据表中最大或最小元素放在其最终位置上。对于选项C,快速排序的基本思想是:将原问题分解为若干个规模更小但结构与原问题相似的子问题。递归地解这些子问题,然后将这些子问题的解组合为原问题的解。快速排序第1趟排序之后,只能使某个关键元素被插入到一个位置,使得该位置之前的所有元素均小于(或大于)关键元素,之后的所有元素均大于(或小于)关键元素。所以,也不一定能把数据表中最大或最小元素放在其最终位置上。对于选项D,归并排序是将两个或两个以上的有序子表合并成一个新的有序表。所以,归并排序第1趟排序之后,只能得到两两有序的一个序列,并不能把数据表中最大或最小元素放在其最终位置上。

第6题:

下列排序中,某一趟结束后未必能选出一个元素放在其最终位置上的是()。

:A直接插入排序

B冒泡排序

C快速排序

D堆排序


参考答案:A

第7题:

在以下排序方法中,()在最后一趟排序结束之前所有元素可能都没有放至其最终位置上。

A.快速排序

B.希尔排序

C.直接插入排序

D.冒泡排序


参考答案:B

第8题:

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

A.希尔排序

B、快速排序

C、冒泡排序

D、堆排序


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

第9题:

在下列算法中,______算法可能出现下列情况:在最后一趟开始之前,所有的元素都不在其最终的位置上。

A.堆排序

B.冒泡排序

C.插入排序

D.快速排序


正确答案:C
解析:在插入排序中,如果待排序列中的最后一个元素其关键字值为最小,则在最后一趟开始之前,前n-1个排好序的元素都不在其最终位置上,与排好序后的位置相差一个位置。因此,本题正确答案为选项C。

第10题:

对n个记录进行非递减排序,在第一趟排序之后,一定能把关键码序列中的最大或最小元素放在其最终排序位置上的排序算法是( )

A.冒泡排序
B.快速排序
C.直接插入排序
D.归并排序

答案:A
解析:
本题考察数据结构与算法的基础知识。冒泡排序Bubble sort:原理是临近的数字两两进行比较,按照从小到大或者从大到小的顺序进行交换,这样一趟过去后,最大或最小的数字被交换到了最后一位,然后再从头开始进行两两比较交换,直到倒数第二位时结束。

更多相关问题