java方法递归调用

该怎么理解这段代码啊?

楼主直接按照顺序脑补一遍就好了,比如输入的n为5时,执行 return n+s(n-1),这个时候要先求s(5-1),也就是s(4)的值,然后要求s(4),就要先求s(3),一直到s(1)的时候,函数这个时候直接返回1.这个时候,程序会退回到s(2)的那一条retrun n+s(n-1)语句,计算 2+s(1)=3然后再退到s(3)执行的过程中,以此类推,得到s(5)的值
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-01-31
1. 当n=1时,返回1
2. 当n>1时,返回n+(n-1)

最简单的了 ,还有个有名的数列递归叫做“斐波那契”数列递归

本回答被提问者和网友采纳
第2个回答  2014-01-31
return 1 代表s( n )函数在参数为1的时候,返回值是整数1,s(1)= 1

这是个递归函数,结果是5+4+3+2+s(1)=15
第3个回答  2014-01-31
那是个出口啊 就是栈的顶层 你了解一下电脑里递归是怎么实现的就明白了,就是一个一个的压站呗。到栈顶在出栈。
相似回答