1.阶乘递归
/**
* 阶乘递归
* @param n
*/
public static int add (int n){
if(n==1){
return 1;
}
return n*add(n-1);
}
递归分为两步:‘递’和‘归’,对应着栈的进和出
图解阶乘递归步骤:
1.当n=5的时候,进行进栈操作,具体图示如下:
5 | 5*add(4) TOP |
n | value |
2.当n=4的时候,进行进栈操作,具体图示如下:
4 | 4*add(3) TOP |