递归 · 阶乘 factorial(4)
「递」一路调用压栈到基准 n≤1,再「归」逐层返回相乘 factorial(n) = n × factorial(n−1)
函数定义
long
factorial
(int n){
if (n <= 1) return 1;
基准
return n * factorial(n-1);
}
阶段
递:调用自身,压入新栈帧
归:返回结果,弹出栈帧并相乘
factorial(4) = 24
调用栈 (call stack) 每帧含参数 n
▶ 重播