简介
案例:阶乘
// 计算一个数的阶乘
public static int factorial(int n) {
if (n == 1) {
return 1;
}
return n * factorial(n - 1);
}
案例 猴子吃桃子
// 猴子吃桃子问题
// 第一天吃了一半多一个 第十天剩一个 求第一天有多少个桃子
// 因为 f(x+1) = f(x)/2 - 1
// 所以 f(x) = (f(x+1) + 1) * 2
public static int peach(int day) {
if (day == 10) {
return 1;
}
return (peach(day + 1) + 1) * 2;
}