单选题对序列{15,9,7,8,20,-1,4}进行排序,进行一趟后数据的排列变为{4,9,-1,8,20,7,15},则采用的是( )排序。A选择B快速C希尔(d=3)D冒泡

单选题
对序列{15,9,7,8,20,-1,4}进行排序,进行一趟后数据的排列变为{4,9,-1,8,20,7,15},则采用的是(  )排序。
A

选择

B

快速

C

希尔(d=3)

D

冒泡


参考解析

解析:

相关考题:

已知某序列为{49,38,65,97,76,13,27},试采用该序列的第一个元素为枢轴进行快速排序,则经过一趟快速排序之后所得到的序列为:【 】。

已知某序列为{49,38,65,97,76,13,27},试采用该序列的第1个元素为枢轴进行快速排序,则经过一趟快速排序之后所得到的序列为:【 】。

利用起泡排序的方法对序列{38,19,65,13,97,49,41,95,1,73}进行排序,第一趟起泡的结果是【 】。

数据序列{5,4,15,10,3,2,9,6,1}是某排序方法进行第一趟排序后的结果,该排序方法可能是() A.冒泡排序B.归并排序C.直接插入排序D.简单选择排序

数据序列{3,2,4,1,5,6,8,7}是第一趟递增排序后的结果,则采用的排序方法能是()。 A.快速排序B.冒泡排序C.直接插入排序D.简单选择排序

对序列{22,86,19,49,12,30,65,35,18}进行一趟排序后得到的结果为{18,12,19,22,49,30,65,35,86},则其使用的排序方法为()。 A.插入排序B.选择排序C.快速排序D.起泡排序

对序列(7,19,24,13,31,8,82,18,44,63,5,29)进行一趟排序后得到的结果如下:(7,18,24,13,5,8,82,19,44,63,31,29),则认为可以使用的排序方法是A.希尔排序B.插入排序C.快速排序D.选择排序

对序列(70,75,82,90,23,16)用快速排序方法进行排序,以序列的第一个元素为划分的基准。在第一趟划分后数据元素的排列是( )。A.16,75,82,90,23,70B.16,70,82,90,23,75C.16,23,70,90,82,75D.16,23,82,90,70,75

阅读下列函数说明和C代码,回答下面问题。[说明]冒泡排序算法的基本思想是:对于无序序列(假设扫描方向为从前向后,进行升序排列),两两比较相邻数据,若反序则交换,直到没有反序为止。一般情况下,整个冒泡排序需要进行众(1≤k≤n)趟冒泡操作,冒泡排序的结束条件是在某一趟排序过程中没有进行数据交换。若数据初态为正序时,只需1趟扫描,而数据初态为反序时,需进行n-1趟扫描。在冒泡排序中,一趟扫描有可能无数据交换,也有可能有一次或多次数据交换,在传统的冒泡排序算法及近年的一些改进的算法中[2,3],只记录一趟扫描有无数据交换的信息,对数据交换发生的位置信息则不予处理。为了充分利用这一信息,可以在一趟全局扫描中,对每一反序数据对进行局部冒泡排序处理,称之为局部冒泡排序。局部冒泡排序的基本思想是:对于N个待排序数据组成的序列,在一趟从前向后扫描待排数据序列时,两两比较相邻数据,若反序则对后一个数据作一趟前向的局部冒泡排序,即用冒泡的排序方法把反序对的后一个数据向前排到适合的位置。扫描第—对数据对,若反序,对第2个数据向前冒泡,使前两个数据成为,有序序列;扫描第二对数据对,若反序,对第3个数据向前冒泡,使得前3个数据变成有序序列;……;扫描第i对数据对时,其前i个数据已成有序序列,若第i对数据对反序,则对第i+1个数据向前冒泡,使前i+1个数据成有序序列;……;依次类推,直至处理完第n-1对数据对。当扫描完第n-1对数据对后,N个待排序数据已成了有序序列,此时排序算法结束。该算法只对待排序列作局部的冒泡处理,局部冒泡算法的名称由此得来。以下为C语言设计的实现局部冒泡排序策略的算法,根据说明及算法代码回答问题1和问题2。[变量说明]define N=100 //排序的数据量typedef struct{ //排序结点int key;info datatype;......}node;node SortData[N]; //待排序的数据组node类型为待排序的记录(或称结点)。数组SortData[]为待排序记录的全体称为一个文件。key是作为排序依据的字段,称为排序码。datatype是与具体问题有关的数据类型。下面是用C语言实现的排序函数,参数R[]为待排序数组,n是待排序数组的维数,Finish为完成标志。[算法代码]void Part-BubbleSort (node R[], int n){int=0 ; //定义向前局部冒泡排序的循环变量//暂时结点,存放交换数据node tempnode;for (int i=0;i<n-1;i++) ;if (R[i].key>R[i+1].key){(1)while ( (2) ){tempnode=R[j] ;(3)R[j-1]=tempnode ;Finish=false ;(4)} // end while} // end if} // end for} // end function阅读下列函数说明和C代码,将应填入(n)处的字句写在的对应栏内。

采用( )算法对序列{18,12,10,11,23,2,7}进行一趟递增排序后,其元素的排列变为{12,10,11,18,2,7,23}。A.选择排序 B.快速排序 C.归并排序 D.冒泡排序

设有字母序列{Q,D,F,X,A,P,N,B,Y,M,C,W},请写出按归并排序方法对该序列进行一趟扫描后的结果【 】。

若对序列(1, 4, 6, 2, 5)采用泡排序法进行从小到大排序,则排序过程中一共要进行多少次元素之间的比较?

序列4 ,2 ,5 ,3 ,8 ,6 ,7,9,采用归并排序算法(升序),经一趟归并后,序列的结果()。

用快速排序算法对序列45,35,65,97,78,13,27进行排序。 (每一趟排序以第一个元素为数轴。要求每一趟排序有完整的过程。)

序列12,10,13,11,16,14,采用冒泡排序算法,经一趟冒泡后,序列的结果是()

对一组初始关键字序列(40,50,95,20,15,70,60,45,10)进行冒泡排序,则第一趟需要进行相邻记录的比较的次数为(),在整个排序过程中最多需要进行()趟排序才可以完成。

序列4,2,5,3,8,6,采用冒泡排序算法(升序),经一趟冒泡后,结果序列是()。

已知序列(17,18,60,40,7,32,73,65,85)请给出采用冒泡排序法对该序列作升序排列时的每一趟结果。

序列14,12,15,13,18,16,采用冒泡排序算法(升序),经一趟冒泡后,序列的结果是()。

设记录的排序码序列为:(49,38,65,97,76,13,27),若采用快速排序,则第一趟划分的结果为 ()

单选题有一组数据(15,9,7,8,20,-1,7,4),用快速排序的划分方法进行一趟划分后数据的排序为( )(按递增序)。A下面的B,C,D都不对。B9,7,8,4,-1,7,15,20C20,15,8,9,7,-1,4,7D9,4,7,8,7,-1,15,20

单选题对序列{15,9,7,8,20,-1,4,} 用希尔排序方法排序,经一趟后序列变为{15,-l,4,8,20,9,7}则该次采用的增量是()A1B4C3D2

问答题已知序列(17,18,60,40,7,32,73,65,85)请给出采用冒泡排序法对该序列作升序排列时的每一趟结果。

单选题对n个元素进行冒泡排序,要求按升序排列,程序中设定某一趟冒泡没有出现元素交换,就结束排序过程。对某n个元素的排序共进行了3n-6次元素间的比较就完成了排序,则()。A原序列是升序排列B原序列是降序排列C对序列只进行了2趟冒泡D对序列只进行了3趟冒泡

问答题用快速排序算法对序列45,35,65,97,78,13,27进行排序。 (每一趟排序以第一个元素为数轴。要求每一趟排序有完整的过程。)

单选题若上题的数据经一趟排序后的排列为{9,15,7,8,20,-1,4},则采用的是( )排序。A选择B堆C直接插入D冒泡

填空题对一组初始关键字序列(40,50,95,20,15,70,60,45,10)进行冒泡排序,则第一趟需要进行相邻记录的比较的次数为(),在整个排序过程中最多需要进行()趟排序才可以完成。