假设待排序的表长为n,那么下列排序算法中,()排序算法需要O(n)的辅助空间。
A.简单选择
B.插入
C.冒泡
D.归并
第1题:
有一种简单的排序算法,叫做计数排序。这种排序算法对一个待排序的表进行排序,并将排序结果存放到另一个新的表中。必须注意的是,表中所有待排序的关键字互不相同,计数排序算法针对表中的每个记录,扫描待排序的表一趟,统计表中有多少个记录的关键字比该记录的关键字小。假设针对某一个记录,统计出的计数值为c,那么,这个记录在新的有序表中的合适的存放位置即为c。
① 给出适用于计数排序的顺序表定义;
② 编写实现计数排序的算法;
③ 对于有n个记录的表,关键字比较次数是多少?
④ 与简单选择排序相比较,这种方法是否更好?为什么?
第2题:
对由n个记录所组成的有序关键码排序时,下列各常用排序算法的平均比较次数分别是:二路归并排序为(29),冒泡排序(30),快速排序为(31)。其中,归并排序和快速排序所需要的辅助存储分别是(32)和(33)。
A.O(1)
B.O(nlog2n)
C.O(n)
D.O(n2)
E.O(n(log2n)2)
第3题:
以关键字比较为基础的排序算法在最坏情况下的汁算时间下界为O(n1ogn)。下面的排序算法中,最坏情况下计算时间可以达到O(n1ogn)的是(33);该算法采用的设计方法是(34)。
A.归并排序
B.插入排序
C.选择排序
D.冒泡排序
第4题:
下列排序算法中时间复杂度不受数据初始状态影响,恒为O(n2)的是
A、堆排序
B、起泡排序
C、直接选择排序
D、快速排序
第5题:
第6题:
数据结构与算法里,以下算法时间复杂度是O(n*n)的是()。
第7题:
排序的平均时间复杂度为O(n•logn)的算法是(),为O(n•n)的算法是()
第8题:
数据结构与算法里,冒泡排序N个记录需要N-1趟排序,就可以完成排序。
第9题:
快速排序
堆排序
归并排序
冒泡排序
第10题:
快速排序
冒泡排序
直接插入排序
希尔排序
第11题:
快速排序是稳定排序
快速排序不稳定排序
快速排序的时间复杂度是O(nlog2n)
快速排序的时间复杂度是O(n*n)
第12题:
bdbcf
bcfed
dbecf
debfc
第13题:
A.堆排序
B.希尔排序
C.快速排序
D.直接插入排序
第14题:
对n个基本有序的整数进行排序,若采用插入排序算法,则时间和空间复杂度分别为(62);若采用快速排序算法,则时间和空间复杂度分别为(63)。
A.O(n2)和O(n)
B.O(n)和O(n)
C.O(n2)和O(1)
D.O(n)和O(1)
第15题:
下列排序算法中,时间复杂度为O(nlog2n)且占用额外空间最少的是(18)。
A.堆排序
B.冒泡排序
C.快速排序
D.SHELL排序
第16题:
第17题:
数据结构与算法中,快速排序的特性描述正确的是()。
第18题:
下列各种排序算法中平均时间复杂度为O(n2)是()
第19题:
下列排序算法中,()需要的辅助存储空间最大。
第20题:
数据结构与算法里,时间复杂度低于O(n*n)的排序有()。
第21题:
第22题:
快速排序
插入排序
希尔排序
基数排序
第23题:
希尔排序
堆排序
选择排序
归并排序
第24题:
冒泡排序
直接插入排序
折半查找
希尔排序