模拟卷二递归阅读与完善程序

阅读程序,回答问题(递推 g(n))。

阅读与完善程序 阅读3 · CSP-S 提高级 初赛 模拟试卷(二)
#include <iostream>
using namespace std;
int g(int n) {
    if (n == 1) return 1;
    return 2 * g(n - 1) + 1;
}
int main() {
    cout << g(5) << endl;
    return 0;
}
  • (1) 程序输出结果是______。(4 分)
  • (2) 函数 g(n) 的闭式(通项公式)是______。(5 分)
  • (3) 该函数的时间复杂度和空间复杂度分别约为多少?(5 分)
答案解析
(1)g(1)=1,g(2)=3,g(3)=7,g(4)=15,g(5)=31,输出 31。(2)g(n)=2ⁿ-1。(3)时间 O(n)(递推 n 次);空间 O(n)(递归栈深度 n)。

同知识点练习

本题收录于「CSP-S 提高级 初赛 模拟试卷(二)」,共 25 道题,全部提供答案与解析。可进入在线练习系统按知识点随机组卷、自动批改并归集错题。

进入在线练习 查看完整试卷 本类全部题目