首页 > 试题广场 >

有一份编程作业,要求学生使用递归程序解决走台阶问题,并分析递

[单选题]
有一份编程作业,要求学生使用递归程序解决走台阶问题,并分析递归调用中的重复情况。走台阶问题:从 每次可以上1个或2个台阶,问第 1 个台阶走到第 15 个台阶有多少种不同的方案。a同学写了一个递归程序来解决。调用 SolveStep(15),输出答案。但是a同学发现这样会使得同一情况被调用多次。例如执行 SolveStep(15) 的时候会调用 SolveStep(13),SolveStep(14) 也会调用SolveStep(13)。请回答:在调用 SolveStep(15)的过程中, SolveStep(9) 被重复调用了()次
int SolveStep(int x){
    if(x <= 1){
        return x;
    }
    return SolveStep(x-1) + SolveStep(x-2);
}
  • 21
  • 13
  • 6
  • 36

这道题你会答吗?花几分钟告诉大家答案吧!