数据序列{8,9,10,4,5,6,20,1,2}只能是()算法的两趟排序后的结

题库2022-08-02  27

问题 数据序列{8,9,10,4,5,6,20,1,2}只能是()算法的两趟排序后的结果。A.直接选择排序B.冒泡排序C.直接插入排序D.堆排序

选项 A.直接选择排序
B.冒泡排序
C.直接插入排序
D.堆排序

答案 C

解析 直接选择排序基本思想:第i趟排序开始时,当前有序区和无序区分别为R[0..i-1]和R[i..n-1](0≤j<n-1),该趟排序则是从当前无序区中选出关键字最小的记录R[k],将它与无序区的第1个记录R交换,使R[0..i]和R[i+1..n-1]分别变为新的有序区和新的无序区。冒泡排序基本思想:起泡排序也叫冒泡排序,通过无序区中相邻记录关键字间的比较和位置的交换,使关键字最小的记录如气泡一般逐渐往上“漂浮”直至“水面”。直接插入排序基本思想:将当前无序区的第1个记录R插入到有序区R[0..i-1]适当的位置上,使R[0..i]变为新的有序区。这种方法通常称为增量法,因为它每次使有序区增加1个记录。堆排序基本思想:堆排序是一种树形选择排序,它的特点是:在排序过程中,将R[1..n]看成是一棵完全二叉树的顺序存储结构,利用完全二叉树中双亲结点和孩子结点之间的内在关系,在当前无序区中选择关键字最大(或最小)的记录。前两个数据有序且不是全局有序,与直接插入排序的过程吻合。解此题要熟知各种排序方法的基本思想。
转载请注明原文地址:https://tihaiku.com/gongwuyuan/2555076.html

最新回复(0)