快速排序算法是,在排序过程中,在待排序数组中确定一个元素为基准元素,根据基准元素

最全题库2022-08-02  36

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

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

答案 A

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

最新回复(0)