public static int hundred(int i){ //递归实现1+2+3+...+99+100
if(i == 100)return 100;
else return i + hundred(i + 1);
}
反过来理解,最后几位必然是100+99+98+…我们让 i 为100时开始逐渐退出递归,也就是说如图所示
这是一个栈模型图,最先进去的被压在最底下,当i = 100时,开始出栈,意味着hundred(99+1) = 100 因此有100 + 99,再继续出栈,有100+99+98…

这篇博客详细介绍了如何使用递归算法实现1到100整数之和,并通过栈模型解释了递归过程中各数值的进出顺序。博主以代码实例为载体,剖析了递归函数的运行逻辑,帮助读者理解递归在计算过程中的工作原理。

1704

被折叠的 条评论
为什么被折叠?



