用某排序方法对一元素序列进行非递减排序时,若该方法可保证在排序前后排序码相同者的相对位置不变,则称该排序方法是稳定的。简单选择排序法排序方法是不稳定的,(61)可以说明这个性质。A.21 48 21*63 17B.17 21 21*48 63C.63 21 48 21*17D.21*17 48 63 21

用某排序方法对一元素序列进行非递减排序时,若该方法可保证在排序前后排序码相同者的相对位置不变,则称该排序方法是稳定的。简单选择排序法排序方法是不稳定的,(61)可以说明这个性质。

A.21 48 21*63 17
B.17 21 21*48 63
C.63 21 48 21*17
D.21*17 48 63 21

参考解析

解析:本题考查数据结构基础知识。简单选择排序算法的思想是:首先在所有记录中选出码最小的记录,把它与第1个记录交换,然后在其余的记录内选出排序码最小的记录,与第2个记录交换…依次类推,直到所有记录排好序。直接选择排序的平均时间复杂度O(n2),是不稳定的排序。第一趟下来,第一个一定是最小的或者最大关键字。算法程序:
/*将数组data中n个整数按非递减有序的方式进行排序*/
void SelectSort(intdate[],intn)
{
inti,j,k,temp;
for(i=0;ik=i;//data[k]表示当前找到的最小数
for(j=i+1;jif(k!=i){temp=data[i];data[i]=data[k];data[k]=temp;}
}
}
根据以上算法,A选项的数序列经过4次排序,i=4,使用i

相关考题:

对一待排序序列分别进行直接插入排序和简单选择排序,若待排序序列中有两个元素的值相同,则()保证这两个元素在排序前后的相对位置不变。 A.直接插入排序和简单选择排序都可以B.直接插入排序和简单选择排序都不能C.只有直接插入排序可以D.只有简单选择排序可以

如果待排序序列中两个元素具有相同的值,在排序前后它们的相互位置发生颠倒,则称该排序算法是不稳定的。(41)是稳定的排序方法,因为这种方法在比较相邻元A.冒泡排序B.希尔排序C.快速排序D.简单选择排序

从未排序序列中依次取出元素与已排序序列中的元素进行比较,将其放入已排序序列的正确位置上的方法,这种排序方法称为()。 A.归并排序B、冒泡排序C、插入排序D、选择排序

若排序前后关键字相同的两个元素相对位置不变,则称该排序方法是稳定的。(56)排序是稳定的。A.归并B.快速C.希尔D.堆

如果待排序序列中两个数据元素具有相同的值,在排序后它们的位置发生颠倒,则称该排序是不稳定的。下列不稳定的排序方法是A.冒泡排序B.归并排序C.直接插入排序D.直接选择排序

如果在待排序序列中有两个元素具有相同的值,排序使它们的位置发生颠倒,则称该排序算法是不稳定的,下列哪种排序算法是不稳定的? ( )A.堆排序B.归并排序C.基数排序D.起泡排序

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

下列叙述中正确的是( )。A.堆排序是一种稳定的内部排序方法B.在排序过程中,若出现元素向逆序向移动的现象,那么这样的排序是不稳定的C.折半插入排序是一种稳定的内部排序方法D.待排序列基本有序时选用快速排序,能够最好地发挥这种排序方法的优势

从未排序的序列中依次取出一个元素与已排序列中的元素进行比较,然后将其放在已排序序列的合适位置上,该排序方法称为(39)。A.插入排序B.选择排序C.希尔排序D.归并排序

若要求对大小为n的数组进行排序的时间复杂度为O(nlog2n),且是稳定的(即如果待排序的序列中两个数据元素具有相同的值,在排序前后它们的相对位置不变),则可选择的排序方法是( )。A.快速排序 B.归并排序 C.堆排序 D.冒泡排序

在待排序的一组关键码序列 k1,k2,,,kn 中,若 ki和kj相同,且在排序前ki先于kj, 那么排序后,如果ki和kj的相对次序保持不变,ki仍领先于kj,则称此类排序为稳定的。若在排序后的序列中有可能出现kj领先于ki的情形,则称此类排序为不稳定的。( )是稳定的排序方法。A. 快速排序 B. 简单选择排序 C. 堆排序 D. 冒泡排序

对一待排序序列分别进行直接插入排序和简单选择排序,若待排序序列中有两个元 素的值相同,则(63) 保证这两个元素在排序前后的相对位置不变。A.直接插入排序和简单选择排序都可以B.直接插入排序和简单选择排序都不能C.只有直接插入排序可以D.只有简单选择排序可以

● 如果待排序序列中两个元素具有相同的值,在排序前后它们的相互位置发生颠倒,则称该排序算法是不稳定的。 (41) 是稳定的排序方法,因为这种方法在比较相邻元素时,值相同的元素并不进行交换。(41)A. 冒泡排序B. 希尔排序C. 快速排序D. 简单选择排序

在待排序的一组关键码序列k1,k2,…,kn中,若ki和kj相同,且在排序前ki领先于kj,那么排序后,如果ki和kj的相对次序保持不变,ki仍领先于kj,则称此类排序为稳定的。若在排序后的序列中有可能出现kj领先于ki的情形,则称此类排序为不稳定的。( )是稳定的排序方法。A.快速排序B.简单选择排序C.堆排序D.冒泡排序

用某排序方法对一个关键码序列进行递增排序时,对于其中关键码相同的元素,若该方法可保证在排序前后这些元素的相对位置不变,则称该排序方法是稳定的。以下关于排序方法稳定性的叙述中,正确的是( )。A.冒泡排序和简单选择排序都是稳定的排序方法B.冒泡排序是稳定的排序方法,简单选择排序不是C.简单选择排序是稳定的排序方法,冒泡排序不是D.冒泡排序和简单选择排序都不是稳定的排序方法

若要求对大小为n的数组进行排序的时间复杂度为O(n^2),且是稳定的(即如果待排序的序列中两个数据元素具有相同的值,在排序前后它们的相对位置不变),则可选择的排序方法是( )A.快速排序B.归并排序C.堆排序D.直接插入排序

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

若要求对大小为n的数组进行排序的时间复杂度为,且是稳定的(即如果待排序的序列中两个数据元素具有相同的值,在排序前后它们的相对位置不变),则可选择的排序方法是( )A.快速排序B.归并排序C.堆排序D.冒泡排序

从未排序的序列中依次取出一个元素与已排序序列中的元素进行比较,然后将其放在已排序序列的合适位置上,该排序方法为( )。A.插入排序B.选择排序C.快速排序D.冒泡排序

若待排序的文件中存在多个关键字相同的记录,经过某种排序方法排序后,具有相同关键字的记录间的相对位置保持不变,则这种排序方法是()的排序方法。

如果待排序序列中两个数据元素具有相同的值,在排序前后它们的相互位置发生颠倒,则称该排序算法是不稳定的,()就是不稳定的排序方法。A、起泡排序B、归并排序C、Shell排序D、直接插入排序E、简单选择排序

排序的方法有很多种,()法从未排序序列中依次取出元素,与已排序序列中的元素作比较,将其放入已排序序列的正确位置上。()法从未排序序列中挑选元素,并将其依次放入已排序序列的一端。交换排序是对序列中元素进行一系列比较,当被比较的两元素为逆序时,进行交换;()和()是基于这类方法的两种排序方法,而()是比()效率更高的方法;()法是基于选择排序的一种方法,是完全二叉树结构的一个重要应用。

排序方法中,从未排序序列中依次取出元素与已排序序列中的元素进行比较,将其放入已排序序列的正确位置上的方法,称为()。A、希尔排序B、冒泡排序C、插入排序D、选择排序

如果待排序序列中两个数据元素具有相似的值,在排序前后它们的相互位置发生颠倒,则称该排序算法是不稳定的,()就是不稳定的排序算法。A、起泡排序B、归并排序C、Shell排序D、直接插入排序E、简单选择排序

多选题如果待排序序列中两个数据元素具有相似的值,在排序前后它们的相互位置发生颠倒,则称该排序算法是不稳定的,()就是不稳定的排序算法。A起泡排序B归并排序CShell排序D直接插入排序E简单选择排序

填空题排序方法有许多种,()法从未排序的序列中依次取出元素,与已排序序列(初始时为空)中的元素作比较,将其放入已排序序列的正确位置上;()法从未排序的序列中挑选元素,并将其依次放入已排序序列(初始时为空)的一端; 交换排序方法是对序列中的元素进行一系列比较,当被比较的两元素逆序时,进行交换;()和()是基于这类方法的两种排序方法, 而()是比()效率更高的方法;()法是基于选择排序的一种排序方法,是完全二叉树结构的一个重要应用。

单选题如果待排序序列中两个数据元素具有相同的值,在排序前后它们的相互位置发生颠倒,则称该排序算法是不稳定的。()就是不稳定的排序方法。A起泡排序B归并排序CShell排序D直接插入排序