一个台阶总共有n级,如果一次可以跳1级,也可以跳2级...,也可以跳上n级,此时跳上一个n级的台阶总共有多少种跳法
递归函数的返回值,2*f(n-1),是数学归纳出来的
f(n) = f(n-1) + f(n-2) + … + f(n-(n-1)) + f(n-n); 即, f(n) = f(0) + f(1) + f(2) + f(3) + … + f(n-2) + f(n-1); 得出,f(n-1) = f(0) + f(1) + f(2) + f(3) + … + f(n-2); 替换,f(n) = f(n-1) + f(n-1); f(n) = 2*f(n-1);
c语言,递归代码
int f(int n) { if(n==0) return 0; else if(n==1) return 1; else return 2*f(n-1); }