对下列四个序列进行快速排序,各以第一个元素为基准进行第一次划分,则在该次划分过程中需要移动元素次数最多的序列为()A、  1, 3, 5, 7, 9B、  9, 7, 5, 3, 1C、  5, 3, 1, 7, 9D、  5, 7, 9, 1, 3

题目

对下列四个序列进行快速排序,各以第一个元素为基准进行第一次划分,则在该次划分过程中需要移动元素次数最多的序列为()

  • A、  1, 3, 5, 7, 9
  • B、  9, 7, 5, 3, 1
  • C、  5, 3, 1, 7, 9
  • D、  5, 7, 9, 1, 3
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

a=[1,2,4,2,4,5,7,10,5,5,7,8,9,0,3],编程用sort进行排序,然后从最后一个元素开始判断?

第2题:

当执行下面的语句定义一维数组a后,此数组的所有元素为 ( ) inta[10];

A.a[1],a[2],a[3],a[4],a[5],a[6],a[8],a[9],a[10],a[10]

B.a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9]

C.a[0],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],a[10]

D.a[1],a[2],a [3],a[4],a [5],a [9],a [7],a [8],a [9],a [10],a [11]


正确答案:B

第3题:

请写出用冒泡排序法对序列(5,1,7,3,1,6,9,3,2,7,6)进行第-遍扫描后的中间结果是________。


正确答案:
(1,1,5,3,2,6,7,3,6,7,9)【分析】冒泡排序法的基本过程:首先,从表头开始往后扫描线性表,在扫描过程中逐次比较相邻两个元素的大小,若前面的元素大于后面的元素,则将他们交换,这样最大者交换到了表的最后面;然后,从后往前扫描剩下的线性表,同样,在扫描过程中逐次比较相邻两个元素的大小若后面的元素小于前面的元素,则将他们交换,这样最小者交换到了表的最前面;从前往后和从后往前扫描一个来回称为-遍:对剩下的线性表重复上述过程,直到剩下的线性表变为空为止.这样线性表就变为有序了。
现在我们来看看对线性表(5,1,7,3,l,6,9,3,2,7,6)从前往后进行扫描的过程:
5>15和l交换位置得到(1,5,7,3,l,6,9,3,2,7,6)
5<7不管,继续往后扫描,扫描到7
7>37和3交换位置得到(1,5,3,7,1,6,9,3,2,7,6)
7>17和1交换位置得到(1,5,3,l,7,6,9,3,2,7,6)
7>67和6交换位置得到(1,5,3,1,6,7,9,3,2,7,6)
7<9不管,继续往后扫描,扫描到9
9>39和3交挟位置得到(1,5,3,l,6,7,3,9,2,7,6)
9>29和2交换位置得到fl,5,3,1,6,7,3,2,9.7,6)
9>79和7交换位置得到(1,5,3,1,6,7,3,2,7,9,6)
9>69和6交换位置得到(1,5,3,l,6,7,3,2,7,6,9)
从前往后扫描结束,9交换到了线性表的最后。
现在我们来看看对剩下的线性表(1,5,3,1,6,7,3,2,7,6)从后往前进行扫描的过程:
6<76和7交换位置得到(1,5,3,l,6,7,3,2,6,7)
6>2不管,继续往前扫描,扫描到外模式或用户模式

第4题:

● 假设有 8 个记录,它的初始关键字序列为{5,7,3,8,2,9,1,4},用冒泡排序对它进行排序,第5次排序结果为 (44) 。

(44)

A. 5,3,7,2,8,1,4,9

B. 2,1,3,4,5,7,8,9

C. 3,2,5,1,4,7,8,9

D. 1,2,3,4,5,7,8,9


正确答案:B

第5题:

设有初始序列(8,5,2,12,7,1,6,10,9,3,4,11),排序后产生新序列(4,5,2, 3,7,1,6,8,9,10,12,11),问采用的是下列哪一个排序算法一趟扫描的结果?( )

A.堆排序

B.初始步长为4的希尔排序

C.二路归并排序

D.以8为分界元素的快速排序


正确答案:D
解析:快速排序是对起泡排序的一种改进,其基本思想是:通过一趟排序将待排序记录n个成独立的两部分,其中一部分记录比关键字小,一部分比关键字大,再分别对这两部分记录进行同样的排序操作。

第6题:

若一组记录的排序码为(7,9,3,5,1,2,10),则利用堆排序的方法建立的初始堆为()

A.10,7,9,3,5,1,2

B.10,9,7,5,1,2,3

C.10,9,7,5,3,2,1

D.10,9,7,3,2,1,5


正确答案:B

第7题:

下列秸序在运行时输出的结果是( )。

A. 1 3 5 7 9

B. 9 7 5 3 1

C. 1 2 3 4 5 6 7 8 9 10

D. 10 9 8 7 6 5 4 3 2 1


正确答案:A
A)    【解析】本题考查数组元素的赋值。数组X元素的下标从1到10,元素分别为:10-下标+1(也就是10 9 8 7 6 5 4 3 2 1)。循环结束后,从高下标端输出偶数下标的元素。

第8题:

{0、2、1、4、3、9、5、8、6、7}是以数组形式存储的最小堆,删除堆顶元素0后的结果是()

A.{2、1、4、3、9、5、8、6、7}

B.{1、2、5、4、3、9、8、6、7}

C.{2、3、1、4、7、9、5、8、6}

D.{1、2、5、4、3、9、7、8、6}


正确答案:D

第9题:

对关键字序列(6,1,4,3,7,2,8,5)进行快速排序时,以第1个元素为基准的一次划分的结果为 ( )

A.(5,1,4,3,6,2,8,7)

B.(5,1,4,3,2,6,7,8)

C.(5,1,4,3,2,6,8,7)

D.(8,7,6,5,4,3,2,1)


正确答案:C

第10题:

将数组{1,1,2,4,7,5}从小到大排序,若采用( )排序算法,则元素之间需要进行的比较次数最少,共需要进行(请作答此空)次元素之间的比较。

A.5
B.6
C.7
D.8

答案:B
解析:
直接插入排序算法是:每次从无序表中取出第一个元素,把它插入到有序表的合适位置,使有序表仍然有序。第1趟比较前两个数,然后把第2个数按大小插入到有序表中;第2趟把第3个数据与前两个数从前向后扫描,把第3个数按大小插入到有序表中;依次进行下去,进行了(n-1)趟扫描以后就完成了整个排序过程。直接插入排序属于稳定的排序,最坏时间复杂性为(n2),空间复杂度为0(1)。依题意,将数组{1,1,2,4,7,5}从小到大排序,若采用直接插入排序算法,则元素之间需要进行的比较次数最少,共需要进行6次元素之间的比较。

更多相关问题