ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
优点:将特别复杂的问题简单化 缺点:性能较差 特别注意内存泄漏(堆栈溢出)(内存不够) ``` //递归之阶乘 private static int Demo(int num) { if (num == 1) { return 1;} return num * Demo(num - 1); } Demo(3); ``` 解析 ``` //首先执行Demo(3) private static int Demo(int num) { if (num == 1) { return 1;} //3不等于1不成立 return num * Demo(num - 1); //3*Demo(3- 1) 即先执行3*Demo(2)了 等Demo(2)执行完才返回 } //执行Demo(2) private static int Demo(int num) { if (num == 1) { return 1;} //2不等于1不成立 return num * Demo(num - 1); //2*Demo(2-1) 即2*Demo(1) 等Demo(1)执行完才返回 } //执行Demo(1) private static int Demo(int num) { if (num == 1) { return 1;}//1等于1成立 此代码执行完毕转向Demo(2)为执行完的代码 return num * Demo(num - 1); //if条件成立不再在执行此代码 } ``` ![](https://img.kancloud.cn/a4/72/a472857da531a362c761b844e3c84496_713x506.png)