第1题:
以下关于快速排序算法的描述中,错误的是( )。在快速排序过程中,需要设立基准元素并划分序列来进行排序。若序列由元素{12,25,30,45,52,67,85}构成,则初始排列为( )时,排序效率最高(令序列的第一个元素为基准元素)。
A.快速排序算法是不稳定的排序算法
B.快速排序算法在最坏情况下的时间复杂度为0(nlgn)
C.快速排序算法是一种分治算法
D.当输入数据基本有序时,快速排序算法具有最坏情况下的时间复杂度
第2题:
希尔排序算法的时间复杂度为O(n2)。()
第3题:
对初始状态为递增序列的数组按递增顺序排序,最省时间的是插入排序算法,最费时间的算法是()
A.堆排序
B.快速排序
C.插入排序
D.归并排序
第4题:
某个应用中,需要对输入数据进行排序,输入数据序列基本有序(如输入为1,2,5,3,4,6,8,7)。在这种情况下,采用( )排序算法最好,时间复杂度为( )。
A.插入 B.归并 C.堆 D.快速 A.O(n) B. O(nlgn) C.O(n^2) D. O(n^2lgn)
第5题:
对n个基本有序的整数进行排序,若采用插入排序算法,则时间和空间复杂度分别为(62);若采用快速排序算法,则时间和空间复杂度分别为(63)。
A.O(n2)和O(n)
B.O(n)和O(n)
C.O(n2)和O(1)
D.O(n)和O(1)
第6题:
在原始序列已经有序(升序或降序)的情况下,(60)算法的时间复杂度为O(n2)。
A.堆排序
B.插入排序
C.快速排序
D.归并排序
第7题:
A.插入一个结点使之有序的算法的时间复杂度为O(1)
B.删除最大值结点使之有序的算法的时间复杂度为O(1)
C.找最小值结点的算法的时间复杂度为O(1)
D.以上都不对
第8题:
● 以下关于快速排序算法的描述中,错误的是 (64) 。在快速排序过程中,需要设立基准元素并划分序列来进行排序。若序列由元素{12,25,30,45,52,67,85}构成,则初始排列为 (65) 时,排序效率最高(令序列的第一个元素为基准元素)。
(64)A. 快速排序算法是不稳定的排序算法
B. 快速排序算法在最坏情况下的时间复杂度为O(n1gn)
C. 快速排序算法是一种分治算法
D. 当输入数据基本有序时,快速排序算法具有最坏情况下的时间复杂度
(65)A. 45,12,30,25,67,52,85
B. 85,67,52,45,30,25,12
C. 12,25,30,45,52,67,85
D. 45,12,25,30,85,67,52
第9题:
设表的长度为n。在下列结构所对应的算法中,最坏情况下时间复杂度最低的是()
A.堆排序
B.有序链表查找
C.希尔排
D.循环链表中寻找最大项
第10题:
快速排序算法在排序过程中,在待排序数组中确定一个元素为基准元素,根据基准元素把待排序数组划分成两个部分,前面一部分元素值小于等于基准元素,而后面一部分元素值大于基准元素。然后再分别对前后两个部分进一步进行划分。根据上述描述,快速排序算法采用了 (61) 算法设计策略。已知确定基准元素操作的时间复杂度为,则快速排序算法的最好和最坏情况下的时间复杂度为 (62) 。
A.分治
B.动态规划
C.贪心
D.回溯