下面给出了阶乘计算的两种方式。以下说法正确的是( )。
int factorial1(int n) {
if (n <= 1) return 1;
return n * factorial1(n - 1);
}
int factorial2(int n) {
int acc = 1;
while (n > 1) {
acc = n * acc;
n = n - 1;
}
return acc;
}
- A. 上面两种实现方式的时间复杂度相同,都为
- B. 上面两种实现方式的空间复杂度相同,都为
- C. 上面两种实现方式的空间复杂度相同,都为
- D. 函数 factorial1() 的时间复杂度为 ,函数 factorial2() 的时间复杂度为
正确答案:A