递归核心概念与规则
 
1. 概念
 
递归是方法自身调用自身的过程,每次调用传入不同变量,可简化复杂问题的代码实现。
 
2. 重要规则
 
1. 执行方法时会创建独立的栈空间,各方法栈空间相互隔离。

2. 方法的局部变量独立,无相互影响;引用类型变量(如数组)会共享数据。

3. 必须存在逼近退出的条件,否则会出现 StackOverflowError (无限递归)。

4. 方法执行完毕或遇到 return 时,会将结果返回给调用者,随后该方法执行结束。
 
3. 应用条件
 
- 大问题可分解为若干小问题,且小问题求解方法与大问题相似,仅规模不同。

- 递归调用次数有限。

- 存在终止递归的条件。
 
4. 适用场景
 
- 数学问题:阶乘、汉诺塔、迷宫问题、斐波那契数等。

- 算法实现:快排、归并排序、二分查找、分治算法等。

- 替代栈解决问题,使代码更简洁。

爬楼梯问题(测试爬10阶)

 

Logo

开源鸿蒙跨平台开发社区汇聚开发者与厂商,共建“一次开发,多端部署”的开源生态,致力于降低跨端开发门槛,推动万物智联创新。

更多推荐