第20652题 单选
已从小到大排序的n个元素使用以首元素为基准的给定快速排序算法时,时间复杂度为以下哪一项?
void quicksort(vector<int>& a, int l, int r) {
  if (l >= r) return;
  int pivot = a[l];
  int i = l, j = r;
  while (i < j) {
    while (i < j && a[j] >= pivot) j--;
    while (i < j && a[i] <= pivot) i++;
    if (i < j) swap(a[i], a[j]);
  }
  swap(a[l], a[i]);
  quicksort(a, l, i - 1);
  quicksort(a, i + 1, r);
}
A

O(n)

B

O(nlogn)

C

O(n²)

D

O(logn)

提交0次 正确率0.00%
答案解析