按照排序中具有相同关键字的记录在排序前后的相对位置是否发生改变,排序分为()。A、稳定排序B、不稳定排序C、外部排序D、内部排序

题目

按照排序中具有相同关键字的记录在排序前后的相对位置是否发生改变,排序分为()。

  • A、稳定排序
  • B、不稳定排序
  • C、外部排序
  • D、内部排序
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

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

A.堆排序

B.归并排序

C.基数排序

D.起泡排序


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

第2题:

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

A.3

B.4

C.5

D.6


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

第3题:

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

A.冒泡排序

B.希尔排序

C.快速排序

D.简单选择排序


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

第4题:

排序算法的稳定性是指( )。

A.经过排序后,能使关键字相同的元素保持原顺序中的相对位置不变
B.经过排序后,能使关键字相同的元素保持原顺序中的相对位置改变
C.排序算法的性能与被排序元素个数关系不大
D.排序算法的性能与被排序元素个数关系密切

答案:A
解析:
排序算法的稳定性是指排序后关键字相同的元素保持原顺序中的相对位置不变。

第5题:

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

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

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

第6题:

以下关于排序算法的叙述中,正确的是( )。

A.冒泡排序法中,元素的交换次数与元素的比较次数一定相同

B.冒泡排序法中,元素的交换次数不少于元素的比较次数

C.简单选择排序中,关键字相同的两个记录在排序前后的相对位置一定不变

D.简单选择排序中,关键字相同的两个记录在排序前后的相对位置可能交换


正确答案:D
解析:冒泡排序法的基本思路是:将相邻位置上的关键字进行比较,如果为逆序,则交换,否则继续往下比较,直到序列已经排好。所以,在这个过程中,元素问的比较次数应大于或等于交换次数。简单选择排序算法的思路是:第1趟在n个记录中选择最小的记录,将它与第1个元素交换,第2趟在n-1个基类中选取最小记录,将它与第2个元素交换,依此类推,直到序列的第n个元素为止。在这个过程中,关键字相同的两个记录在排序前后的相对位置可能发生变化。例如,序列为(80,80,40,30)时,选择排序法需要将第1个元素80和最后一个元素30交换,这样就使得两个80的相对位置改变了。

第7题:

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

(41)

A. 冒泡排序

B. 希尔排序

C. 快速排序

D. 简单选择排序


正确答案:A

第8题:

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

A.冒泡排序

B.归并排序

C.直接插入排序

D.直接选择排序


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

第9题:

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

A.快速排序
B.归并排序
C.直接选择排序
D.冒泡排序

答案:C
解析:
常见的排序方法的基本情况如图所示,选项中满足平均时间复杂度且是不稳定的方法只有直接插入排序符合要求。

第10题:

按某关键字对记录序列排序,若关键字()的记录在排序前和排序后仍保持它们的前后关系,则排序算法是稳定的,否则是不稳定的。
关键字相等的记录

更多相关问题