从未排序的序列中依次取出一个元素与已排序序列中的元素进行比较,然后将其放在已排序序列的合适位置上,该排序方法为_____________。

admin2021-01-13  20

问题 从未排序的序列中依次取出一个元素与已排序序列中的元素进行比较,然后将其放在已排序序列的合适位置上,该排序方法为_____________。

选项 A、插入排序
B、选择排序
C、快速排序
D、冒泡排序

答案A

解析 插入排序的基本思想是:在插入第j个记录时,R1、R2、…、Ri-1已经排好序,这时将关键字k,依次与关键字ki-1,ki-2…,k1进行比较,从而找到应该插入的位置,然后将ki插入,插入位置及其后的记录依次后移。
    选择排序的基本思想是:在进行每趟排序时,从无序的记录中选择出关键字最小(或最大)的记录,将其插入到有序序列(初始时为空)的尾部。
    快速排序是对冒泡排序的一种改进。先通过一趟排序将待排记录分割成独立的两部分,其中一部分记录的关键字均比另一部分记录的关键字小,然后分别对这两部分记录继续进行排序,使得整个序列有序。
    冒泡排序的基本思想是:首先将第一个记录的关键字和第二个记录的关键字进行比较,若为逆序(即r[1].key>r[2].key),则交换两个记录,接着比较第二个记录和第三个记录的关键字。依次类推,直至第n一1个记录和第n个记录的关键字进行过比较为止。这个过程称为第一趟冒泡排序,使得关键字最大的记录被安置到最后一个记录的位置上。然后进行第二趟冒泡排序,对前n一1个记录进行同样的操作,结果是使关键字次大的记录被安置到第n一1个记录的位置上。当进行完第n一1趟冒泡排序时,所有记录都已有序排列。
    综合以上分析,题目描述的排序算法为插入排序。
转载请注明原文地址:https://kaotiyun.com/show/PbNZ777K
0

最新回复(0)