如果待排序序列中两个数据元素具有相同的值,在排序前后它们的相互位置发生颠倒,则称该排序算法是不稳定的,()就是不稳定的排序方法。A、起泡排序B、归并排序C、Shell排序D、直接插入排序E、简单选择排序

题目

如果待排序序列中两个数据元素具有相同的值,在排序前后它们的相互位置发生颠倒,则称该排序算法是不稳定的,()就是不稳定的排序方法。

  • A、起泡排序
  • B、归并排序
  • C、Shell排序
  • D、直接插入排序
  • E、简单选择排序
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

如果在待排序序列中有两个元素具有相同的值,排序使它们的位置发生颠倒,则称该排序算法是不稳定的,下列哪种排序算法是不稳定的? ( )

A.堆排序

B.归并排序

C.基数排序

D.起泡排序


正确答案:A
解析:一般来说,排序过程中比较是在相邻两个记录之间进行的排序方法是稳定的,快速排序、堆排序和希尔排序等属于不稳定的排序。

第2题:

对一待排序序列分别进行直接插入排序和简单选择排序,若待排序序列中有两个元 素的值相同,则(63) 保证这两个元素在排序前后的相对位置不变。

A.直接插入排序和简单选择排序都可以

B.直接插入排序和简单选择排序都不能

C.只有直接插入排序可以

D.只有简单选择排序可以


正确答案:C
本题考查简单排序算法特点。直接插入排序的思想是:是将n个待排序的元素由一个有序表和一个无序表组成,开始时有序表中只包含一个元素。排序过程中,每次从无序表中取出第一个元素,将其插入到有序表中的适当位置,使有序表的长度不断加长,完成排序过程。例如,对序列21,48,21*,9进行直接插入排序,21和21*.的相对位置在排序前后可保持,如下所示:第一趟得到有序子序列:21.48第二趟得到有序子序列:21,21*,48第三趟得到有序序列:9,21,21*,48简单选择排序的过程是:第一趟在n个记录中选取最小记录作为有序序列的第一个记录;第二趟在n-l个记录中选取最小记录作为有序序列的第二个记录;第i趟在n-i+l个记录中选取最小的记录作为有序序列中的第一个记录,直到将序列排列有序。对序列21,48,21*,9进行简单选择排序,过程如下:第一趟选出最小元素,将其交换至t号位,序列为:9,48.21*,21第二趟选出次小元素,将其交换至2号位,序列为:9.21*.48,21第三趟选出第三小元素,将其交换至3号置,序列为:9,21*.21,48从该例可知.简单选择排序过程不能保证序码相同的两个元素在排序前后的相对位置不变,直接插入排序则可以。

第3题:

如果待排序序列中两个元素具有相同的值,在排序前后它们的相互位置发生颠倒,则称该排序算法是不稳定的。(41)是稳定的排序方法,因为这种方法在比较相邻元

A.冒泡排序

B.希尔排序

C.快速排序

D.简单选择排序


正确答案:A
解析:本题考查排序算法。冒泡排序的思想是比较相邻的元素,将较大者交换到后面,对于值相同的元素,则无需交换。希尔排序则是按照一定的间隔将元素分成若干组,在同组内进行直接插入排序,这样较小的元素以较大的步幅向前移动。但是在希尔排序中,值相同的元素不一定分在同一组,因此,在排序前后它们的相互位置可能发生颠倒。快速排序是先设定一个枢轴元素(基准元素,通常是序列的第一个元素),从序列的两端开始扫描,将大于枢轴元素的元素向序列后端换,小于枢轴元素者向序列前端换。在此过程中,值相同的元素会交换位置,因此快速排序不是稳定的排序方法。n个元素进行简单选择排序的基本方法是:通过n-i次元素之间的比较,从n-i+1个元素中选出最小元素,并与第i(1≤I≤n)个元素进行交换,当i等于n时所有记录有序排列。简单选择排序是一种不稳定的排序方法。

第4题:

若要求对大小为n的数组进行排序的时间复杂度为o(nlog2n),且是稳定的(即如果待排序的序列中两个数据元素具有相同的值,在排序前后它们的相对位置不变),则可选择的排序方法是( )

A.快速排序
B.归并排序
C.堆排序
D.冒泡排序

答案:B
解析:

第5题:

如果待排序中两个数据元素具有相同的值,在排序后它们的相互位置发生颠倒,则称该排序算法不稳定,( )就是不稳定的排序算法。

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

答案:C
解析:
所谓排序就是要整理文件中的记录,使之按关键字递增(或递减)次序排列起来。直接插入排序的过程为在插入第i个记录时,R1,R2,…,Ri-1已经排好序,将第i个记录的排序码岛依次和R1,R2,…,Ri-1的排序码逐个进行比较,找到适当的位置。在这个排序过程中,如果发现两个数相等,则在已排好序的数前面插入这个相等的数,这样与原序列发生了颠倒,是不稳定的排序算法。

第6题:

若排序前后关键字相同的两个元素相对位置不变,则称该排序方法是稳定的。下列排序算法中,有(14)种排序算法是稳定的:归并排序、快速排序、希尔排序、堆排序、基数排序、直接插入排序、冒泡排序、直接选择排序。

A.3

B.4

C.5

D.6


正确答案:B
解析:此题考察考生对稳定排序概念的理解。稳定排序算法是指在排序过程中两个排序关键字相同的元素,在排序的过程中位置不发生变化。例如对数列:62,42,12,36,4,12,67进行排序时,第一个12在排序完毕以后要排在第二个12的前面,这就是稳定的排序。有些人可能会发出疑问:既然都是12,为什么一定要保证它的顺序呢?举一个简单的例子:如果组织一次有奖答题活动,选手在电脑上答完题以后,就直接提交数据,最后按答题得分奖励前:100名参赛选手,这样会出现一个问题,即如果同时有10个人并列第100名,而我们只能给一个人发奖,到底给谁发呢?最合理的判断标准是给先提交答案的人发奖。这样稳定排序就可以用上了。以上的这些排序算法中,归并排序、基数排序、直接插入排序和冒泡排序是稳定的,其它的都不稳定。

第7题:

● 如果待排序序列中两个元素具有相同的值,在排序前后它们的相互位置发生颠倒,则称该排序算法是不稳定的。 (41) 是稳定的排序方法,因为这种方法在比较相邻元素时,值相同的元素并不进行交换。

(41)

A. 冒泡排序

B. 希尔排序

C. 快速排序

D. 简单选择排序


正确答案:A

第8题:

如果待排序序列中两个数据元素具有相同的值,在排序后它们的位置发生颠倒,则称该排序是不稳定的。下列不稳定的排序方法是

A.冒泡排序

B.归并排序

C.直接插入排序

D.直接选择排序


正确答案:D
解析:排序方法有很多种,在这些排序方法中,直接插入排序、冒泡排序、归并排序和基数排序是稳定的排序方法,直接选择排序、希尔排序、快速排序和堆排序是不稳定的。

第9题:

下列排序方法中,()是稳定的排序方法。

A.直接插入排序和快速排序
B.折半插入排序和起泡排序
C.简单选择排序和四路归并排序
D.树形选择排序和shell排序

答案:B
解析:
直接插入排序、四路归并排序、起泡排序、树形选择排序和折半插入排序是稳定的排序。快速排序、shell排序、简单选择排序是不稳定的排序。

第10题:

若要求对大小为n的数组进行排序的时间复杂度为O(n^2),且是稳定的(即如果待排序的序列中两个数据元素具有相同的值,在排序前后它们的相对位置不变),则可选择的排序方法是( )

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

答案:D
解析:
常见的排序方法的基本情况如图所示,选项中满足时间复杂度且是稳定的方法只有直接插入排序最符合,故正确答案为:D

更多相关问题