现需要对一个基本有序的数组进行排序。此时最适宜采用的算法为(64)排算法,时间复杂度为(65)。A.插入B.快速C.归并 D.堆
现需要对一个基本有序的数组进行排序。此时最适宜采用的算法为(64)排算法,时间复杂度为(65)。
A.插入
B.快速
C.归并
D.堆
B.快速
C.归并
D.堆
参考解析
解析:对于基本有序数组采用插入排序效率是最高的,时间复杂度为O(n),快速排序适用于无序数组,对于有序数组来说时间复杂度是O(n2),属于最坏的情况。
相关考题:
● 以下关于快速排序算法的描述中,错误的是 (64) 。在快速排序过程中,需要设立基准元素并划分序列来进行排序。若序列由元素{12,25,30,45,52,67,85}构成,则初始排列为 (65) 时,排序效率最高(令序列的第一个元素为基准元素)。(64)A. 快速排序算法是不稳定的排序算法B. 快速排序算法在最坏情况下的时间复杂度为O(n1gn)C. 快速排序算法是一种分治算法D. 当输入数据基本有序时,快速排序算法具有最坏情况下的时间复杂度(65)A. 45,12,30,25,67,52,85B. 85,67,52,45,30,25,12C. 12,25,30,45,52,67,85D. 45,12,25,30,85,67,52
以下关于快速排序算法的描述中,错误的是( )。在快速排序过程中,需要设立基准元素并划分序列来进行排序。若序列由元素{12,25,30,45,52,67,85}构成,则初始排列为( )时,排序效率最高(令序列的第一个元素为基准元素)。A.快速排序算法是不稳定的排序算法B.快速排序算法在最坏情况下的时间复杂度为0(nlgn)C.快速排序算法是一种分治算法D.当输入数据基本有序时,快速排序算法具有最坏情况下的时间复杂度
● 将数组{1,1,2,4,7,5}从小到大排序,若采用(62)排序算法,则元素之间需要进行的比较次数最少,共需要进行(63)次元素之间的比较。 A.直接插入 B.归并 C.堆 D.快速 A.5 B.6 C.7 D.8
某个应用中,需要对输入数据进行排序,输入数据序列基本有序(如输入为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)
快速排序算法在排序过程中,在待排序数组中确定一个元素为基准元素,根据基准元素把待排序数组划分成两个部分,前面一部分元素值小于等于基准元素,而后面一部分元素值大于基准元素。然后再分别对前后两个部分进一步进行划分。根据上述描述,快速排序算法采用了 (61) 算法设计策略。已知确定基准元素操作的时间复杂度为,则快速排序算法的最好和最坏情况下的时间复杂度为 (62) 。A.分治B.动态规划C.贪心D.回溯
某个应用中,需要对输入数据进行排序,输入数据序列基本有序(如输入为1,2,5,3,4,6,8,7)。在这种情况下,采用(1)排序算法最好,时间复杂度为(2)。1、____A.插入B.归并C.堆D.快速
填空题分别采用堆排序,快速排序,冒泡排序和归并排序,对初态为有序的表,则最省时间的是冒泡算法,最费时间的是()算法。