[单选题]

计算N!的递归算法如下,求解该算法的时间复杂度时,只考虑相乘操作,则算法的计算时间T(n)的递推关系式为(55);对应时间复杂度为(56)。

int Factorial (int n)

{//计算n!

if(n<=1)return 1;

else return n * Factorial(n-1);

}(62)

A.T(n)=T(n-1)+1

B.T(n)=T(n-1)

C.T(n)=2T(n-1)+1

D.T(n)=2T(n-1)-1

参考答案与解析:

相关试题

设求解某问题的递归算法如下:求解该算法的计算时间时,仅考虑算法Move所做的计算

[单选题]设求解某问题的递归算法如下:求解该算法的计算时间时,仅考虑算法Move所做的计算为主要计算,且Move为常数级算法,并设算法Move的计算时间为k,当n=5时,算法F的计算时间为(62)。A.7kB.15kC.31kD.63k

  • 查看答案
  • 某算法的时间复杂度可用递归式[*],表示,若用[*]表示该算法的渐进时间复杂度的

    [单选题]某算法的时间复杂度可用递归式[*],表示,若用[*]表示该算法的渐进时间复杂度的紧致界,则正确的是(62)。A.(nlg2n)B.(nlgn)C.(n2)D.(n3)

  • 查看答案
  • 某算法的时间复杂度可用递归式[*],表示,若用[*]表示该算法的渐进时间复杂度的

    [单选题]某算法的时间复杂度可用递归式[*],表示,若用[*]表示该算法的渐进时间复杂度的紧致界,则正确的是(62)。A.(nlg2n)B.(nlgn)C.(n2)D.(n3)

  • 查看答案
  • 设算法A的时间复杂度可用递归式表示,算法B的时间复杂度可用递归表示,若要使得算法

    [单选题]设算法A的时间复杂度可用递归式表示,算法B的时间复杂度可用递归表示,若要使得算法B渐进地快于算法A,则a的最大整数为()A . 48B . 49C . 13D . 14

  • 查看答案
  • 若某算法在问题规模为n时,其基本操作的重复次数可由下式表示,则该算法的时间复杂度

    [单选题]若某算法在问题规模为n时,其基本操作的重复次数可由下式表示,则该算法的时间复杂度为(64)。A.O(n)B.O(n2)C.O(logn)D.O (nlogn)

  • 查看答案
  • 设某算法的计算时间表示为递推关系式T(n)=(n-1)+n(n>0)及T(0)=1,则该算法的时间复杂度为( )。

    [单选题]设某算法的计算时间表示为递推关系式T(n)=(n-1)+n(n>0)及T(0)=1,则该算法的时间复杂度为( )。A.O(lgn)B.O(nlgn)C

  • 查看答案
  • 莱算法的时间代价递推关系为T(n)=2T(n,2)+n,T(1)=则该算法的时间复杂度为( )。

    [单选题]莱算法的时间代价递推关系为T(n)=2T(n,2)+n,T(1)=则该算法的时间复杂度为( )。A.o(n)B.C.D.O(1)

  • 查看答案
  • 设S为C语言的语句,计算机执行下面算法时,算法的时间复杂度为()。for(i=n

    [单选题]设S为C语言的语句,计算机执行下面算法时,算法的时间复杂度为()。for(i=n-1;i>=0;i--)for(j=0;j

  • 查看答案
  • 若n表示问题的规模、O(f(n))表示算法的时间复杂度随n变化的增长趋势,则算法时间复杂度最小的是( )。

    [单选题]若n表示问题的规模、O(f(n))表示算法的时间复杂度随n变化的增长趋势,则算法时间复杂度最小的是( )。A.O(n2)B.O(n)C.O(logn)

  • 查看答案
  • 排序算法的简述,复杂度的计算

    [主观题]排序算法的简述,复杂度的计算

  • 查看答案
  • 计算N!的递归算法如下,求解该算法的时间复杂度时,只考虑相乘操作,则算法的计算时