#T2001. 程序基本常识

程序基本常识

  1. 在使用高级语言编写程序时,一般提到的“空间复杂度”中的“空间”是指()。 {{ select(1) }}
  • 程序运行时理论上所占的内存空间
  • 程序运行时理论上所占的数组空间
  • 程序运行时理论上所占的硬盘空间
  • 程序源文件理论上所占的硬盘空间
  1. 斐波那契数列的定义如下:F1=1,F2=2,Fn=Fn1+Fn2(n>=3)F_1=1,F_2=2,F_n=F_{n-1}+F_{n-2}(n>=3) 如果用下面的函数计算斐波那契数列的第n项,则其时间复杂度为()。
int F(int n)
{
    if(n<=2)
        return 1;
    else 
        return F(n-1)+F(n-2);
}

{{ select(2) }}

  • O(1)
  • O(n)
  • O(n2n^2)
  • O(Fn)
  1. T(n)T(n)表示某个算法输入规模为n时的运算次数。如果T(1)为常数,且有递归式T(n)=2T(n2)+2nT(n) = 2*T(\frac n 2) + 2n,那么T(n)T(n) = ()。 {{ select(3) }}
  • Θ(n)
  • Θ(nlognnlog^n)
  • Θ(n2n^2)
  • Θ(n2lognn^2 log^n)
  1. 设某算法的计算时间表示为递推关系式T(n)=T(n1)+n(nT(n) = T(n - 1) + n(n为正整数)及T(0)=1T(0) = 1,则该算法的时间复杂度为()。 {{ select(4) }}
  • O(lognlog^n)
  • O(nlognn log^n)
  • O(nn)
  • O(n2n^2)
  1. 假设某算法的计算时间表示为递推关系式 T(n)=2T(n4)+nT(n)=2T(\frac n 4)+\sqrt n ,T(n)=1T(n)=1 则算法的时间复杂度为( )。。 {{ select(5) }}
  • O(𝑛)
  • O(n\sqrt n)
  • O(nlogn\sqrt n log ^n)
  • O(𝑛2𝑛^2)
  1. 若某算法的计算时间表示为递推关系式: T(N)=2T(N2)+NlogNT(N) = 2T(\frac N 2) + N log^N, T(1)=1T(1) = 1 则该算法的时间复杂度为()。。 {{ select(6) }}
  • O(NN)
  • O(NlogNN log^N)
  • O(Nlog2NN log_2 ^N)
  • O(N2N^2)
  1. 如果对于所有规模为n的输入,一个算法均恰好进行()次运算,我们可以说该算法的时间复杂度为O(2n2^n)。 {{ select(7) }}
  • 2n+12^{n+1}
  • 3n3^n
  • n2nn*2^n
  • 22n2^{2^n}