用某种排序方法对序列(25,84,21,47,15,27,68,35,20)进行排序,记录序列的变化情况如下: 原始序列:258421471527683520第一趟排序结果:201521254727683584 第二趟排序结果:15202125352747

admin2012-08-16  40

问题 用某种排序方法对序列(25,84,21,47,15,27,68,35,20)进行排序,记录序列的变化情况如下:
原始序列:258421471527683520第一趟排序结果:201521254727683584
第二趟排序结果:152021253527476884第三趟排序结果:152021252735476884
则采用的排序方法是(     )。

选项 A、直接选择排序
B、冒泡排序
C、快速排序
D、二路归并排序

答案C

解析 直接选择排序第一趟就应该选出一个最小的在第一个位置;冒泡排序法是两两比较,25与84比较,25要小,位置不变;快速排序法使比基准数(第一趟是25)小的数在基准数左边,比基准数大的数在基准数右边;二路归并排序是分组比较,第一趟应该是“2584”“2147”“1527”“6835”“20”这几组进行排序。常用的排序方法有插入排序、交换排序、选择排序、归并排序。①插入排序的基本方法是:每步将一个待排序的记录按其关键字的大小插到前面已经排序的序列中的适当位置,直到全部记录插入完毕为止。插入排序常见的方法有直接插入排序和希尔排序。②交换排序是两两比较待排序记录的关键字,发现两个记录的次序相反时即进行交换,直到没有反序的记录为止。应用交换排序基本思想的主要排序方法有冒泡排序和快速排序。③选择排序是每一趟从待排序的记录中选出关键字最小的记录,顺序放在已排好序的子文件的最后,直到全部记录排序完毕。常用的选择排序方法有直接选择排序和堆排序。归并排序是将这些有序的子序列进行合并,从而得到有序的序列。合并是一种常见运算,其方法是:比较各子序列的第一个记录的键值,最小的一个就是排序后序列的第一个记录的键值。取出这个记录,继续比较各子序列现在的第一个记录的键值,便可找出排序后的第二记录。如此继续下去,最终可以得到排序结果。归并排序是一种稳定的排序,其时间复杂度无论是在最好情况下还是在最坏情况下均是O(nlog2n)。
转载请注明原文地址:https://jikaoti.com/ti/id7QFFFM
0

最新回复(0)