niusouti.com
更多“排序都有哪几种方法?请列举。用JAVA实现一个快速排序。”相关问题
  • 第1题:

    下列排序方法中,哪一种方法的总的关键码比较次数与记录的初始排列状态无关?______。

    A.直接插入排序

    B.起泡排序

    C.快速排序

    D.直接选择排序


    正确答案:B

  • 第2题:

    以下关于快速排序的叙述正确的是()

    A.快速排序在所有排序方法中最快,而且所需辅助空间最少

    B.在快速排序中,不可以用队列替代栈

    C.快速排序的空间复杂度为O(n))

    D.快速排序在待排序的数据随机分布时效率最高


    参考答案:D

  • 第3题:

    待排序数组是否能被较均匀地划分对快速排序的性能有重要影响,因此枢轴元素的选取非常重要。有人提出从待排序的数组元素中随机地取出一个元素作为枢轴元素。下面是随机化快速排序划分的伪代码——利用原有的快速排序的划分操作,请填充其中的空缺处。其中,RANDOM(i,j)表示随机取i到j之间的一个数,包括i和j。

    (2)随机化快速排序是否能够消除最坏情况的发生? (10)。(是或否)


    正确答案:由于随机化的快速排序的划分调用了传统的快速排序算法的PARTITION操作而传统的划分每次以数组的最后一个元素作为枢轴元素因此随机化的划分操作中每次先随机获得一个元素将其与最后一个元素交换。随机化的快速排序消除了输入数据的不同排列对算法性能的影响降低了极端不均匀划分的概率但不能保证不会导致最坏情况的发生。
    由于随机化的快速排序的划分调用了传统的快速排序算法的PARTITION操作,而传统的划分每次以数组的最后一个元素作为枢轴元素,因此随机化的划分操作中每次先随机获得一个元素,将其与最后一个元素交换。随机化的快速排序消除了输入数据的不同排列对算法性能的影响,降低了极端不均匀划分的概率,但不能保证不会导致最坏情况的发生。

  • 第4题:

    (15)下列排序方法中,哪一种方法总的关键码比较次数与记录的初始排列状态无关?

    A)直接选择排序

    B)直接插入排序

    C)起泡排序

    D)快速排序


    正确答案:C

  • 第5题:

    写快速排序可以用()方式实现。

    • A、插入
    • B、递归
    • C、选择
    • D、都不对

    正确答案:B

  • 第6题:

    下列排序算法中,()不能保证每趟排序至少能将一个元素放到其最终的位置上。

    • A、希尔排序
    • B、快速排序
    • C、冒泡排序
    • D、堆排序

    正确答案:A

  • 第7题:

    下列排序方法中,哪一个是稳定的排序方法?()

    • A、堆排序
    • B、二分法插入排序
    • C、希尔排序
    • D、快速排序

    正确答案:B

  • 第8题:

    若一个元素序列基本有序,则选用()排序较快。

    • A、堆排序
    • B、快速排序
    • C、直接插入法
    • D、直接选择排序

    正确答案:C

  • 第9题:

    单选题
    就排序算法所用的辅助空间而言,堆排序,快速排序,归并排序的关系是(  )。
    A

    堆排序<快速排序<归并排序

    B

    堆排序<归并排序<快速排序

    C

    堆排序>归并排序>快速排序

    D

    堆排序>快速排序>归并排序E.以上答案都不对


    正确答案: D
    解析:

  • 第10题:

    问答题
    请编程实现一个冒泡排序算法?

    正确答案: int[]array=newint[*];
    inttemp=0;
    for(inti=0;i{
    for(intj=i+1;j{
    if(array[j]{
    temp=array[i];
    array[i]=array[j];
    array[j]=temp;
    }
    }
    }
    解析: 暂无解析

  • 第11题:

    单选题
    下列排序方法中,哪一个是稳定的排序方法?()
    A

    堆排序

    B

    二分法插入排序

    C

    希尔排序

    D

    快速排序


    正确答案: D
    解析: 暂无解析

  • 第12题:

    单选题
    下列排序方法中,哪一种方法的比较次数与纪录的初始排列状态无关()
    A

    直接插入排序

    B

    起泡排序

    C

    快速排序

    D

    直接选择排序


    正确答案: D
    解析: 暂无解析

  • 第13题:

    在下列排序算法中,哪一个算法的时间复杂度与初始排序无关()。

    A、直接插入排序

    B、冒泡排序

    C、快速排序

    D、直接选择排序


    参考答案:D

  • 第14题:

    下列排序方法中,哪一种方法总的关键码比较次数与记录的初始排列状态无关?( )

    A) 直接选择排序

    B) 直接插入排序

    C) 起泡排序

    D) 快速排序

    A.

    B.

    C.

    D.


    正确答案:A

  • 第15题:

    用下列4种排序方法,对一个已排好序(由小到大)的序列进行排序(由小到大),哪种方法最好?

    A.冒泡排序

    B.直接选择排序

    C.直接插入排序

    D.归并排序


    正确答案:C
    解析:直接插入排序的基本算法是:当插入第i(i>=1) 个对象时,前面的V[0],V[1],…,V[i-1) 已经排好序,这时,用V[i]的关键码与V[i-1],[i-2]...的关键码顺序进行比较,找到插入位置即将V[i]插入,原来位置上的对象则向后移。
      由此可知,直接插入排序法的关键码比较次数与对象的初始排列有关,准确地说,就是与可以取的值有关。在本题中,序列已经排好了序,所以其i的取值达到了最大,就是序列中元素的个数,其实也就是根本无须比较和交换,所以这种方法是最经济的。

  • 第16题:

    下列排序算法中,不能保证每趟排序至少能将一个元素放到其最终的位置上的是()。

    A.快速排序
    B.shell排序
    C.堆排序
    D.冒泡排序

    答案:B
    解析:
    shell排序每次使待排序记录基本有序,但不能保证每趟排序至少能将一个元素放到其最终的位置上。

  • 第17题:

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


    正确答案: 第一趟:27,35,65,97,78,13,45;27,35,45,97,78,13,65;27,35,13,97,78,45,65;
    27,35,13,45,78,97,65;
    第二趟:13,35,27,45,78,97,65;13,27,35,45,78,97,65;
    第三趟:13,27,35,45,65,97,78;13,27,35,45,65,78,95;

  • 第18题:

    给定一个关键字序列{24,19,32,43,38,6,13,22},请写出快速排序第一趟的结果;堆排序时所建的初始堆;归并排序的全过程。然后回答上述三种排序方法中哪一种方法使用的辅助空间最少?在最坏情况下哪种方法的时间复杂度最差?


    正确答案:一趟快速排序:22,19,13,6,24,38,43,32
    初始大堆:43,38,32,22,24,6,13,19
    二路并归:
    第一趟:19,24,32,43,6,38,13,22
    第二趟:19,24,32,43,6,13,22,38
    第三趟:6,13,19,22,24,32,38,43
    堆排序辅助空间最少,最坏情况下快速排序时间复杂度最差。

  • 第19题:

    下列排序方法中,哪一种方法的比较次数与纪录的初始排列状态无关()

    • A、直接插入排序
    • B、起泡排序
    • C、快速排序
    • D、直接选择排序

    正确答案:D

  • 第20题:

    请编程实现一个冒泡排序算法?


    正确答案: int[]array=newint[*];
    inttemp=0;
    for(inti=0;i{
    for(intj=i+1;j{
    if(array[j]{
    temp=array[i];
    array[i]=array[j];
    array[j]=temp;
    }
    }
    }

  • 第21题:

    单选题
    写快速排序可以用()方式实现。
    A

    插入

    B

    递归

    C

    选择

    D

    都不对


    正确答案: A
    解析: 暂无解析

  • 第22题:

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

    正确答案: 第一趟:27,35,65,97,78,13,45;27,35,45,97,78,13,65;27,35,13,97,78,45,65;
    27,35,13,45,78,97,65;
    第二趟:13,35,27,45,78,97,65;13,27,35,45,78,97,65;
    第三趟:13,27,35,45,65,97,78;13,27,35,45,65,78,95;
    解析: 暂无解析

  • 第23题:

    单选题
    下列排序算法中(  )不能保证每趟排序至少能将一个元素放到其最终的位置上。
    A

    快速排序

    B

    she排序

    C

    堆排序

    D

    冒泡排序


    正确答案: C
    解析: