zoukankan      html  css  js  c++  java
  • (你的排序学的怎样?)排序专项练习

    1.当待排序记录已经从小到大排序或者已经从大到小排序时,高速排序的运行时间最省()

    A.    

    B.    

     

     

    答案:B

    依据快排的特点可知,高速排序基本有序情况下效率最低,在基本无序情况下效率最高。

     

     

    2.下面排序中时间复杂度最差的是

    A.    归并排序

    B.    选择排序

    C.   希尔排序

    D.   堆排序

     

    答案:B

    排序方法

    平均时间

    最好时间

    最坏时间

    桶排序(不稳定)

    O(n)

    O(n)

    O(n)

    基数排序(稳定)

    O(n)

    O(n)

    O(n)

    归并排序(稳定)

    O(nlogn)

    O(nlogn)

    O(nlogn)

    高速排序(不稳定)

    O(nlogn)

    O(nlogn)

    O(n^2)

    堆排序(不稳定)

    O(nlogn)

    O(nlogn)

    O(nlogn)

    希尔排序(不稳定)

    O(n^1.25)

     

     

    冒泡排序(稳定)

    O(n^2)

    O(n)

    O(n^2)

    选择排序(不稳定)

    O(n^2)

    O(n^2)

    O(n^2)

    直接插入排序(稳定)

    O(n^2)

    O(n)

    O(n^2)

     

     

     

    3.最坏情况下 insertsort, quick sort ,merge sort的复杂度各自是多少?

    A.     O(n*n),O(nlogn),O(n*n)

    B.    O(n*n),O(n*n),O(nlogn)

    C.   O(n*n),O(nlogn),O(nlogn)

    D.   O(nlogn),O(nlogn),O(nlogn)

     

     

     

    答案:B

    要注意,快排在最坏情况下复杂度为O(n*n),而合并排序不受初始状态有序程度的影响。

     

     

    4.设某文件经内排序后得到100个初始归并段(初始顺串),若使用多路归并排序算法。且要求三趟归并完毕排序,问归并路数最少为

    A.    8

    B.    7

    C.   6

    D.   5

     

     

    答案:D                    

    5^3=125>100

     

     

    5.将一个从大到小的数组。用下面排序方法排序成从小到大的,()最快。

    A.     插入排序

    B.    冒泡排序

    C.   高速排序

    D.   堆排序

     

     

    答案:D

    上述情况对于插入排序、冒泡排序、高速排序都是最差情况

     

     

    6.高速排序方法在()情况下最不利于发挥其好处

    A.    要排序的数据量太大

    B.    要排序的数据中含有多个同样值

    C.   要排序的数据个数为奇数

    D.   要排序的数据已基本有序

     

     

    答案:D

    能够參考1题

     

     

    7.下列排序算法中,在待排序数据有序的情况下。花费时间最多的是()

    A.    高速排序

    B.    希尔排序

    C.   冒泡排序

    D.   堆排序

     

     

    答案:A

     能够參考1题

     


    8.    下列排序算法中。其时间复杂度和记录的初始排列无关的是

    A.    插入排序

    B.    堆排序

    C.   高速排序

    D.   冒泡排序

     

     

    答案:B

     


    9.有字符序列(Q,H,C,Y,P,A,M,S,R,D,F,X,新序列(F,H,C,D,P,A,M,Q,R,S,Y,X)是下列()排序算法一趟扫描结果。

    A.     堆排序

    B.    高速排序

    C.   希尔排序

    D.   冒泡排序

     

     

    答案:B

    感觉这样的题基本上都是在说快排。。

     

     

    10.在待排序的元素序列基本有序的前提下,效率最高的排序方法是?

    A.     插入排序

    B.    选择排序

    C.   高速排序

    D.   归并排序

     

    答案:A(注意和第5题对照着看)



  • 相关阅读:
    Delphi中三种方法获取Windows任务栏的高度
    Qt中QFtp获取带有中文的文件名称出现乱码的解决方法(比较巧妙,toLatin1压缩掉了QString自动给每个英文字符加上的那些00字节)
    Qt在Linux环境下应用程序字体模糊的解决方法(先改成使用默认字体,然后使用qtconfig配置)
    关于Qt信号与槽机制的传递方向性研究(结论其实是错误的,但是可以看看分析过程)
    RCP:如何把Preferences中的项从一个类别移动到另一个类别 2013-08-23 18:59 by Binhua Liu,
    服务端套接字类CxServerSocket的使用
    ASP.NET MVC原理
    jQuery 2.0.3 源码分析core
    CodeBlocks的下载安装、配置、简单编程
    ASP.NET MVC学习笔记-----Filter2
  • 原文地址:https://www.cnblogs.com/wzjhoutai/p/7279876.html
Copyright © 2011-2022 走看看