niusouti.com
更多“快速排序方法(Quick Sort)的时间复杂度为(61)。A.O(n2)B.O(nlogn)C.O(n)D.O(logn) ”相关问题
  • 第1题:

    在一个元素个数为N的数组里,找到升序排在N/5位置的元素的最优算法时间复杂度是()

    A.O(n)

    B.O(nlogn)

    C.O(n(logn)2)

    D.O(n3/2)


    正确答案:A

  • 第2题:

    以比较为基础的排序算法在最坏情况下的计算时间下界为(55)。

    A.O(n)

    B.O(n2)

    C.O(logn)

    D.O(nlogn)


    正确答案:D
    解析:此问题考查以比较为基础的排序算法的时间复杂度分析,利用二元树可以证明对任何以关键字比较为基础的排序算法,最坏情况的计算时间下界都为O(nlogn),如归并排序算法。

  • 第3题:

    利用折半查找方法在长度为n的有序表中查找一个元素的平均查找长度是()。

    A.O(n2)

    B.O(nlogn)

    C.O(n)

    D.O(logn)


    参考答案:D

  • 第4题:

    对于快速排序,元素有序排列时的时间复杂度为(57)。

    A.O(log2n)

    B.O(n)

    C.O(nlog2n)

    D.O(n2)


    正确答案:D
    解析:对于快速排序,元素有序排列是其最坏情况,时间复杂度为O(n2)。当每次划分都可以将待排序列分为均匀的两部分时,进行的排序趟数最少,时间复杂度为O(nlog2n)。

  • 第5题:

    直接选择排序的平均时间复杂度为(46)。

    A.O(n)

    B.O(nlogn)

    C.O(n2)

    D.O(logn)


    正确答案:C
    解析:本题主要考查排序算法的时间复杂度。排序算法的时间复杂度是用元素的平均比较次数和元素的平均移动次数来衡量的,它是评价排序算法的主要标准。

  • 第6题:

    向一个长度为N的顺序表中插入—个新元素的平均时间复杂度为(25)。

    A.O(N)

    B.O(1)

    C.O(logN)

    D.O(N2)


    正确答案:A
    解析:向一个长度为N的顺序表中插入一个新元素的平均比较次数为N/2,所以平均时间复杂度为O(N)。

  • 第7题:

    对n个元素进行快速排序时,最坏情况下的时间复杂度为(65)。

    A.O(log2n)

    B.O(n)

    C.O(nlog2/t)

    D.O(n2)


    正确答案:D
    解析:比较常用的排序算法的平均时间复杂度,以及最坏情况下的时间复杂度,可以知道快速排序最坏情况下的时间复杂度为O(n2)。

  • 第8题:

    用归并排序方法,在最坏情况下的时间复杂度为( )。

    A.O(n+1)

    B.O(n2)

    C.O(log2n)

    D.O(nlog2n)


    正确答案:D
    解析:一个完整的归并排序需要进行[log2n)次,实现归并排序需要和代派序列元素个数等量的辅助空间,其时间复杂度为O(nlog2n)。

  • 第9题:

    若某算法在问题规模为n时,其基本操作的重复次数可由下式表示,则该算法的时间复杂度为(64)。

    A.O(n)

    B.O(n2)

    C.O(logn)

    D.O (nlogn)


    正确答案:B
    解析:T(n)=T(n-1)+n=T(n-2)+n-1+n=……=T(1)+n+(n-1)+(n-2)+……+2=n(n+1)/2,时间复杂度为0(n2。)。

  • 第10题:

    以关键字比较为基础的排序算法,在最坏情况下的计算时间下界为(65)。

    A.O(2n)

    B.O(n2)

    C.O(logn)

    D.O(nlogn)


    正确答案:C
    解析:利用二元树可以证明对任何以关键字比较为基础的排序算法,最坏情况的计算时间下界都为O(logn),如归并排序算法。

  • 第11题:

    对n个元素进行快速排序时,最坏情况下的时间复杂度为______。

    A.O(log2n)

    B.O(n)

    C.O(nlog2n)

    D.O(n2)


    正确答案:D
    解析:最坏情况发生在每次划分过程产生的两个区间分别包含n-1个元素和1个元素的时候。其时间复杂度为0(n2)。

  • 第12题:

    冒泡排序在最好情况下的时间复杂度为( )。

    A.O(1)
    B.O(log2n)
    C.O(n)
    D.O(n2)

    答案:C
    解析:
    若初始序列为“正序”,则只需进行一趟排序,在排序过程中进行n-l次比较,且不移动记录,因此时间复杂度为n。

  • 第13题:

    折半查找的时间复杂性为()

    A.O(n2)

    B.O(n)

    C.O(nlogn)

    D.O(logn)


    正确答案:D

  • 第14题:

    在长度为n的有序表中折半查找一个元素的平均查找长度是()。

    A.O(n2)

    B.O(nlogn)

    C.O(n)

    D.O(logn)


    参考答案:D

  • 第15题:

    设n为正整数。则下面程序段的时间复杂度为()。 k=0; for(i=1;i<=n;i++){ for(j=i;j<=n;j++) @ k++; }

    A.O(1)

    B.O(n)

    C.O(nlogn)

    D.O(n2)


    参考答案:D

  • 第16题:

    对n个元素进行快速排序时,最坏情况下的时间复杂度为(55)。

    A.O(log2n)

    B.O(n)

    C.O(nlog2n)

    D.O(n2)


    正确答案:D
    解析:快速排序在最坏情况下的时间复杂度退化到一般的交换排序,即为O(n2)。

  • 第17题:

    冒泡排序的时间复杂度为A.O(n) B.O(n2) C.O(log2n) D.O(nlog2n)


    正确答案:B
    冒泡排序的基本概念是:以升序为例,依次比较相邻的两个数,将小数放在前面,大数放在后面。第一趟排序过程是这样的,首先比较第1个和第2个数,将小数放前,大数放后。然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后。这样一次排序后,最后一个数为所有数中的最大数。第二趟排序重复以上过程,仍从第一对数开始比较(因为可能由于第2个数和第3个数的交换,使得第1个数不再小于第2个数),将小数放前,大数放后,一直比较到最大数前的一对相邻数,将小数放前,大数放后,第二趟结束,在倒数第二个数中得到一个新的最大数。如此下去,直至最终完成排序。
    冒泡排序的时间复杂度是指执行冒泡排序算法所需要的时间。冒泡排序算法最好的时间复杂度为所要排序的数列为正序,即在执行排列算法之前就已经达到目标的顺序。这样只需要执行一次排序算法,算法所需要进行数据比较的次数为n-1次。冒泡排序算法最差的时间复杂度为当前所要进行排列的数列顺序与目标数列的顺序相反。算法所需要进行数据比较的次数为n(n-1)/2=O(n2)。算法的平均时间复杂度为O(n2)。

  • 第18题:

    用堆排序方法,在最坏情况下的时间复杂度为( )。

    A.O(n+1)

    B.O(n2)

    C.O(log2n)

    D.O(n log2n)


    正确答案:D

  • 第19题:

    若n表示问题的规模、O(f(n))表示算法的时间复杂度随n变化的增长趋势,则算法时间复杂度最小的是(59)。

    A.O(n2)

    B.O(n)

    C.O(logn)

    D.O(nlogn)


    正确答案:C
    解析:本题考查的是算法消耗的时间度量。一般情况下,一个算法中基本操作重复执行的次数是问题规模n的某个函数f(n),算法的时间量度记作T(n)=O(f(n)),它表示随问题n的增大,算法执行时间的增长率和 f(n)的增长率相同,称做算法的渐进时间复杂度,简称时间复杂度。显然,在O(n2)、O(n)、 O(logn)和O(nlogn)中,复杂度最小的是O(logn)。

  • 第20题:

    直接选择排序的平均时间复杂度为(17)。最好情况下时间复杂度为O(n)的排序算法是(18)。在最好和最花情况下的时间复杂度均为O(nlogn)且稳定的排序方法是(19)。

    A.O(n)

    B.O(nlogn)

    C.O(n2)

    D.O(logn)


    正确答案:C

  • 第21题:

    对n个关键字的序列进行快速排序,平均情况下的空间复杂度为_______

    A.O(1)

    B.O(logn)

    C.O(n)

    D.O(nlogn)


    正确答案:D

  • 第22题:

    下面程序中算法的时间复杂度是()

    A.O(n)

    B.O(n^2)

    C.O(logn)

    D.O(n*logn)


    正确答案:C

  • 第23题:

    在桶排序中,其平均时间复杂度是( )

    A.O(1)

    B.O(n)

    C.O(n2)

    D.O(1gn)


    正确答案:B