在快速排序算法中,如果每次选择的基准元素都是当前序列中的最大或最小元素,那么该算法的时间复杂度将退化到何种程度?
答案解析
快速排序的平均时间复杂度为O(n log n),但在最坏情况下,即每次选择的基准元素都是序列中的最大或最小元素时,快速排序的时间复杂度会退化到O(n^2)。这是因为每次分割只能将序列分为一个元素和剩余的元素两部分,导致需要进行n次分割,每次分割的时间复杂度为O(n),因此总的时间复杂度为O(n^2)。选项A表示线性时间复杂度,不符合快速排序的最坏情况。选项C表示快速排序的平均时间复杂度,不是最坏情况。选项D表示的时间复杂度高于快速排序的最坏情况,因此不正确。
正确答案:B