更多“在对n个元素进行快速排序的过程中,若每次划分得到的左、右两个子区间中元素的个数相等或只差一个,则整个排序过程得到的含两个或两个元素的区间个数大致为()A、nB、n/2C、log2nD、2n”相关问题
  • 第1题:

    在快速排序过程中,每次划分,将被划分的表(或子表)分成左、右两个子表,考虑这两个子表,下列结论一定正确的是________。

    A.左、右两个子表都已各自排好序

    B.左边子表中的元素都不大于右边子表中的元素

    C.左边子表的长度小于右边子表的长度

    D.左、右两个子表中元素的平均值相等


    正确答案:B
    解析:快速排序(又称分区交换排序)的基本方法是:在待排序序列中任取一个记录,以它为基准用交换的方法将所有的记录分成两部分,关键码值比它大的放在它的后面(右边子表),其余的放在它前面(左边子表),然后分别对左、右两个子表重复上面的操作直到排序完成。由此可知:左边子表中的元素总是不大于右边子表中的元素。

  • 第2题:

    对于具有n个元素的一个数据序列,若只需得到其中第k个元素之前的部分排序,最好采用(63)。

    A.堆排序

    B.希尔排序

    C.快速排序

    D.直接插入排序


    正确答案:A
    解析:对于具有n个元素的一个数据序列,对于只需得到最终序列的前k个元素,堆排序比较简单。对于希尔排序、直接插入排序,只有在排序过程后才能确保全部序列及前k个元素的最终排列。快速排序采用分治算法,常用递归算法实现,该算法根据枢轴元素进行划分,第一趟划分结束后得到了两个子序列,一个序列中的元素均不大于另一个子序列中的元素,枢轴元素介于这两个子序列之间。若仅需得到最终序列的前k个元素,每次得到枢轴元素位置后再考虑下一步的排序过程,在算法的流程控制上比较复杂。

  • 第3题:

    快速排序算法在排序过程中,在待排序数组中确定一个元素为基准元素,根据基准元素把待排序数组划分成两个部分,前面一部分元素值小于等于基准元素,而后面一部分元素值大于基准元素。然后再分别对前后两个部分进一步进行划分。根据上述描述,快速排序算法采用了( )算法设计策略。已知确定基准元素操作的时间复杂度为Θ(n),则快速排序算法的最好和最坏情况下的时间复杂度为(请作答此空)。


    答案:D
    解析:
    快速排序采用分治法的思想。快速排序最好情况的时间复杂度是O(nlog2n)。最坏情况下,即初始序列按关键字有序或者基本有序时,快速排序的时间复杂度为O(n2)。

  • 第4题:

    快速排序算法在排序过程中,在待排序数组中确定一个元素为基准元素,根据基准元素把待排序数组划分成两个部分,前面一部分元素值小于基准元素,而后面一部分元素值大于基准元素。然后再分别对前后两个部分进一步进行划分。根据上述描述,快速排序算法采用了(61)算法设计策略。已知确定着基准元素操作的时间复杂度为O(n),则快速排序算法的最好和最坏情况下的时间复杂度为(62)。

    A.分治
    B.动态规划
    C.贪心
    D.回溯

    答案:A
    解析:
    将数据分成若干份,每份单独处理后再合并,其思想为分治。理想情况下,快速排序每次将数据划分为规模相近的两部分,并递归至不可再划分,因此其时间复杂度为O(nlgn)。在最坏情况下,每次划分都极不均匀,如一个类别中仅有一个元素,另一个类别中包含剩余所有元素。这时划分的复杂度为O(n),”次操作的总复杂度为O(n2)。

  • 第5题:

    每次把待排序的区间划分为左、右两个子区间,其中左区间中记录的关键字均小于等于基准记录的关键字,右区间中记录的关键字均大于等于基准记录的关键字,这种排序称为()。

    • A、堆排序
    • B、归并排序
    • C、插入排序
    • D、快速排序

    正确答案:D

  • 第6题:

    假定对元素序列(7, 3, 5, 9, 1, 12, 8, 15)进行快速排序,则进行第一次划分后,得到的左区间中元素的个数为()。

    • A、 2
    • B、 3
    • C、 4
    • D、 5

    正确答案:B

  • 第7题:

    每次直接或通过基准元素间接比较两个元素,若出现逆序排列时就交换它们的位置,此种排序方法叫做()排序;每次使两个相邻的有序表合并成一个有序表的排序方法叫做()排序。


    正确答案:快速;归并

  • 第8题:

    在对n个元素进行快速排序的过程中,若每次划分得到的左、右两个子区间中元素的个数相等或只差一个,则整个排序过程得到的含两个或两个元素的区间个数大致为()

    • A、n
    • B、n/2
    • C、log2n
    • D、2n

    正确答案:B

  • 第9题:

    在对n个元素进行快速排序的过程中,最好情况下需要进行()躺。

    • A、n
    • B、n/2
    • C、log2n
    • D、2n

    正确答案:C

  • 第10题:

    每次把待排序方的区间划分为左、右两个区间,其中左区间中元素的值不大于基准元素的值,右区间中元素的值不小于基准元素的值,此种排序方法叫做()。

    • A、冒泡排序
    • B、堆排序
    • C、快速排序
    • D、归并排序

    正确答案:C

  • 第11题:

    单选题
    在对n个元素进行快速排序的过程中,若每次划分得到的左、右两个子区间中元素的个数相等或只差一个,则整个排序过程得到的含两个或两个元素的区间个数大致为()
    A

    n

    B

    n/2

    C

    log2n

    D

    2n


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

  • 第12题:

    单选题
    在对n个元素进行快速排序的过程中,若每次划分得到左、右两个子区间中元素的个数相等或只差一个,则整个排序过程得到的含有两个或两个元素的区间个数大致为()
    A

    n

    B

    2n

    C

    n/2

    D

    log2n


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

  • 第13题:

    对于具有n个元素的一个数据序列,若只需要得到其中第A个元素之前的部分排序,最好采用(43)。

    A.堆排序

    B.希尔排序

    C.快速排序

    D.直接插入排序


    正确答案:A
    解析:对于具有n个元素的一个数据序列,对于只需得到最终序列的前k个元素,最好采用堆排序。对于希尔排序、直接插入排序,只有在排序过程后才能确保全部序列及前k个元素的最终排列。快速排序采用分治算法,常用递归算法实现,该算法根据枢轴元素进行划分,第一趟划分结束后得到了两个子序列,一个序列中的元素均不大于另一个子序列中的元素,枢轴元素介于这两个子序列之间。若仅需得到最终序列的前k个元素,每次得到枢轴元素位置后再考虑下一步的排序过程,在算法的流程控制上比较复杂。

  • 第14题:

    若对n个元素进行直接插入排序,则进行第i趟排序过程前,有序表中的元素个数为______。

    A.1

    B.11

    C.i

    D.i+l


    正确答案:C

  • 第15题:

    快速排序算法在排序过程中,在待排序数组中确定一个元素为基准元素,根据基准元素把待排序数组划分成两个部分,前面一部分元素值小于基准元素,而后面一部分元素值大于基准元素。然后再分别对前后两个部分进一步进行划分。根据上述描述,快速排序算法采用了(61)算法设计策略。已知确定着基准元素操作的时间复杂度为O(n),则快速排序算法的最好和最坏情况下的时间复杂度为(62)。

    A.O(n)和O(nlgn)
    B.O(n)和O(n2)
    C.O(nlgn)和O(nlgn)
    D.O(nlgn)和O(n2)

    答案:D
    解析:
    将数据分成若干份,每份单独处理后再合并,其思想为分治。理想情况下,快速排序每次将数据划分为规模相近的两部分,并递归至不可再划分,因此其时间复杂度为O(nlgn)。在最坏情况下,每次划分都极不均匀,如一个类别中仅有一个元素,另一个类别中包含剩余所有元素。这时划分的复杂度为O(n),”次操作的总复杂度为O(n2)。

  • 第16题:

    在对n个元素进行直接插入排序的过程中,共需要进行()趟。

    • A、n
    • B、n+1
    • C、n-1
    • D、2n

    正确答案:C

  • 第17题:

    对待排序的元素序列进行划分,将其分为左、右两个子序列,再对两个子序列施加同样的排序操作,直到子序列为空或只剩一个元素为止。这样的排序方法是()

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

    正确答案:C

  • 第18题:

    在快速排序方法中,进行每次划分时,是从当前待排序区间的()向()依次查找出处于逆序的元素并交换之,最后将基准元素交换到一个确定位置,从而以该位置把当前区间划分为前后两个子区间。


    正确答案:两端;中间

  • 第19题:

    对待排序的元素序列进行划分,将其分为左、右两个子序列,再对两个子序列施加同样的排序操作,直到子序列为空或只剩一个元素为止。这样的排序方法是()。

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

    正确答案:C

  • 第20题:

    在对n个元素进行快速排序的过程中,若每次划分得到左、右两个子区间中元素的个数相等或只差一个,则整个排序过程得到的含有两个或两个元素的区间个数大致为()

    • A、n
    • B、2n
    • C、n/2
    • D、log2n

    正确答案:D

  • 第21题:

    若对n个元素进行直接插入排序,则进行第i趟排序过程前,有序表中的元素个数为()

    • A、1
    • B、i-1
    • C、i
    • D、i+l

    正确答案:C

  • 第22题:

    假定一组记录为(46,79,56,38,40,80),对其进行快速排序的过程中,含有两个或两个以上元素的排序区间的个数为()个。


    正确答案:4

  • 第23题:

    单选题
    假定对元素序列(7, 3, 5, 9, 1, 12, 8, 15)进行快速排序,则进行第一次划分后,得到的左区间中元素的个数为()。
    A

     2

    B

     3

    C

     4

    D

     5


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

  • 第24题:

    填空题
    假定一组记录为(46,79,56,38,40,80),对其进行快速排序的过程中,含有两个或两个以上元素的排序区间的个数为()个。

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