更多“通常将元素的比较和移动操作视为排序算法的基本步骤。”相关问题
  • 第1题:

    任何一个基于比较的内部排序算法,若对 6个元素进行排序,最坏情况下所需要的比较

    次数是几次。


    正确答案:
     

  • 第2题:

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

    A.分治

    B.动态规划

    C.贪心

    D.回溯


    正确答案:A
    本题考查快速排序算法。快速排序算法是应用最为广泛的排序算法之一。其基本思想是将n个元素划分为两个部分:一部分元素值小于某个数;另一部分元素值大于某个数,该数的位置确定;然后进一步划分前面部分和后面部分。根据该叙述,可以知道,这里采用的是分治算法设计策略。由于已知划分操作的时间复杂度为,不需要合并子问题的答案。对于最好的情况,应该是每次划分都把n个元素划分为大约2个n/2个元素的子数组,此时T(n)=2T(n/2)+解该递归式,可得时间复杂度为。若刚好划分的极度不均衡,即每个划分刚好把n个元素划分为一边0个元素,一边n-l个元素,此时T(n)=T(n/1)+解该递归式,可得时间复杂度为。

  • 第3题:

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


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

  • 第4题:

    与直接插入排序法比较,折半插入排序法减少了排序过程中的()。

    • A、排序总的趟数
    • B、元素的移动次数
    • C、元素之间的比较次数
    • D、使用的辅助空间的数量

    正确答案:C

  • 第5题:

    大多数排序算法都有两个基本的操作:()和()。


    正确答案:比较;移动

  • 第6题:

    排序算法中,从尚未排序序列中依次取出元素与已排序序列(初始为空)中的元素进行比较(要求比较次数尽量少),然后将其放入已排序序列的正确位置的方法是()

    • A、折半插入排序
    • B、直接插入排序
    • C、归并排序
    • D、选择排序

    正确答案:A

  • 第7题:

    排序算法中,从尚未排序序列中依次取出元素与已排序序列(初始为空)中的元素进行比较,然后将其放入已排序序列的正确位置的方法是()

    • A、冒泡排序
    • B、直接插入排序
    • C、归并排序
    • D、选择排序

    正确答案:B

  • 第8题:

    对相邻的元素进行两两比较,顺序相反则进行交换,不断重复直到元素全部有序的排序算法称为()

    • A、冒泡排序
    • B、快速排序
    • C、插入排序
    • D、选择排序

    正确答案:A

  • 第9题:

    填空题
    要求在n个数据元素中找值最大的元素,其基本操作为元素间的比较。算法的时间复杂度为()

    正确答案: O(n)
    解析: 暂无解析

  • 第10题:

    单选题
    在下列各种排序算法中,不是以“比较”作为主要操作的算法是()
    A

    选择排序

    B

    冒泡排序

    C

    插入排序

    D

    基数排序


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

  • 第11题:

    单选题
    排序算法中,从尚未排序序列中依次取出元素与已排序序列(初始为空)中的元素进行比较(要求比较次数尽量少),然后将其放入已排序序列的正确位置的方法是()
    A

    折半插入排序

    B

    直接插入排序

    C

    归并排序

    D

    选择排序


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

  • 第12题:

    单选题
    与直接插入排序法比较,折半插入排序法减少了排序过程中的()。
    A

    排序总的趟数

    B

    元素的移动次数

    C

    元素之间的比较次数

    D

    使用的辅助空间的数量


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

  • 第13题:

    在待排序的元素序列基本有序的前提下,效率最高的排序算法是______。

    A.冒泡排序

    B.选择排序

    C.快速排序

    D.归并排序


    正确答案:A

  • 第14题:

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

    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)。

  • 第15题:

    排序算法中,从未排序序列中依次取出元素与已排序序列(初始为空)中的元素进行比较(要求比较次数尽量少),然后将其放入已排序序列的正确位置的方法是()。

    A冒泡

    B直接插入

    C折半插入

    D选择排序


    C

  • 第16题:

    在下列各种排序算法中,不是以“比较”作为主要操作的算法是()

    • A、选择排序
    • B、冒泡排序
    • C、插入排序
    • D、基数排序

    正确答案:D

  • 第17题:

    要求在n个数据元素中找值最大的元素,其基本操作为元素间的比较。算法的时间复杂度为()


    正确答案:O(n)

  • 第18题:

    交换排序算法中的比较次数与初始元素序列的排列无关。


    正确答案:正确

  • 第19题:

    排序算法中,从尚未排序序列中依次取出元素与已排序序列(初始为空)中的元素进行比较(要求比较次数尽量少),然后将其放入已排序序列的正确位置的方法是()


    正确答案:折半插入排序

  • 第20题:

    填空题
    排序算法中,从尚未排序序列中依次取出元素与已排序序列(初始为空)中的元素进行比较(要求比较次数尽量少),然后将其放入已排序序列的正确位置的方法是()

    正确答案: 折半插入排序
    解析: 暂无解析

  • 第21题:

    填空题
    要求在n个数据元素中找其中值最大的元素,设基本操作为元素间的比较。则比较的次数和算法的时间复杂度分别为()和()。

    正确答案: n-1,O(n)
    解析: 暂无解析

  • 第22题:

    单选题
    排序算法中,从尚未排序序列中依次取出元素与已排序序列(初始为空)中的元素进行比较,然后将其放入已排序序列的正确位置的方法是()
    A

    冒泡排序

    B

    直接插入排序

    C

    归并排序

    D

    选择排序


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

  • 第23题:

    单选题
    关于冒泡排序算法的基本思想,下列说法正确的是()。
    A

    一个轮次一个轮次地处理。将元素分成已排序元素集合和未排序元素集合两部分。开始时已排序元素集合为空,在每一轮次,从未排序元素集合中找出最小值的元素,将其移入已排序元素集合,直到未排序元素集合为空时则算法结束

    B

    一个元素一个元素地处理。先从第一个元素处理,依次与其它元素比较后放入到正确排序的位置,再处理下一个元素,直到处理完所有元素则算法结束

    C

    一个轮次一个轮次地处理。在每一轮次中依次对待排序数组元素中相邻的两个元素进行比较,根据排序要求决定是否交换两个元素,直到某一轮次没有元素交换则算法结束

    D

    一个元素一个元素地处理。先从最后一个元素处理,依次与其它元素比较后放入到正确排序的位置,再处理下一个元素,直到处理完所有元素则算法结束


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

  • 第24题:

    单选题
    对相邻的元素进行两两比较,顺序相反则进行交换,不断重复直到元素全部有序的排序算法称为()
    A

    冒泡排序

    B

    快速排序

    C

    插入排序

    D

    选择排序


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