递归算法的返回值问题
概念:递归算法(英语:recursion algorithm)在计算机科学中是指一种通过重复将问题分解为同类的子问题而解决问题的方法。
绝大多数编程语言支持函数的自调用,在这些语言中函数可以通过调用自身来进行递归。
递归执行的语句在遇到同名函数前正常执行,而其后的语句则暂时保留在内存中,待其递归后得到的子过程完全结束后才继续执行。故有规律:越是最前的函数语句,递归后越在最后执行。
public class Recusion { public static void main(String[] args) { int value = recurse(10); System.out.println(); System.out.println("return value " + value); } private static int recurse(int i) { if (i == 0) { return 0; } else { i--; recurse(i); } System.out.print(" " + i); return i; } }
//打印结果 0 1 2 3 4 5 6 7 8 9
//return value 9
Aimer,c'est partager
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步