#GOBJ407H. GESP 4级客观题|复杂度基础|课后作业

GESP 4级客观题|复杂度基础|课后作业

GESP 4级客观题|复杂度基础|课后作业

考试频率:高频。本卷共 6 题。

  1. 对包含 n 个元素的数组进行冒泡排序,平均时间复杂度一般为( )。

    {{ select(1) }}

  • O(n)O(n)
  • O(nlogn)O(nlogn)
  • O(n2)O(n^2)
  • 以上都不正确
  1. NN 个元素的数组执行插入排序算法,通常的时间复杂度是 O(N2)O(N^2)

    {{ select(2) }}

  1. 插入排序在最好情况下的时间复杂度是( )。

    {{ select(3) }}

  • O(1)O(1)
  • O(N/2)O(N/2)
  • O(N)O(N)
  • O(N2)O(N^2)
  1. 给定如下算法,其时间复杂度为( )。
bool f(int arr[], int n, int target) {
    for (int i = 0; i < n; i++) {
        int sum = 0;
        for (int j = 0; j < n; j++) {
            if (i & (1 << j)) {
                sum += arr[j];
            }
        }
        if (sum == target) return true;
    }
    return false;
}

{{ select(4) }}

  • O(n)O(n)
  • O(n2)O(n^2)
  • O(2n)O(2^n)
  • O(nlogn)O(n \log n)
  1. 下述斐波那契数列计算的时间复杂度是( )。
int fibonacci(int n) {
    if (n == 0) return 0;
    if (n == 1) return 1;
    return fibonacci(n - 1) + fibonacci(n - 2);
}

{{ select(5) }}

  • O(n)O(n)
  • O(n2)O(n^2)
  • O(2n)O(2^n)
  • O(logn)O(\log n)
  1. 关于插入排序的时间复杂度,下列说法正确的是( )。

    {{ select(6) }}

  • 最好情况和最坏情况的时间复杂度都是 O(n2)O(n^2)
  • 最好情况是 O(n)O(n) ,最坏情况是 O(n2)O(n^2)
  • 最好情况是 O(n)O(n) ,最坏情况是 O(nlogn)O(n \log n)
  • 最好情况是 O(logn)O(\log n) ,最坏情况是 O(n2)O(n^2)
蜀ICP备2025119001号-1