10、下面关于排序算法(冒泡排序、插入排序和选择排序)的描述中,不正确的是( )。

别灰心,再试一次!

💡 真题解析

答案:C

解析:这道题目考察的是对几种常见排序算法(冒泡排序、插入排序和选择排序)的理解。我们逐一分析每个选项:

A选项:正确。冒泡排序需要交换两个元素,涉及3个单元操作(temp = a; a = b; b = temp;),而插入排序只需要一个赋值操作。

B选项:正确。选择排序的时间复杂度是固定的 O(n2),无论数据是否已经有序。

C选项:不完全正确。虽然冒泡排序的最坏情况和平均情况的时间复杂度都是 O(n2),但在最好情况下(即数组已经是有序的),冒泡排序可以通过增加 flag 来判断在第一次遍历过程中是否发生过元素位置交换,这样对于已经排好序的数组在执行完第一次遍历后就可以提前终止,从而达到 O(n)的时间复杂度。

D选项:正确。插入排序对于部分有序的数据集表现更好,因为它可以利用已有的有序性减少比较次数。

综上所述,选项C是不正确的描述。