递归求1+2+3+...+100,为什么一直处于运算中,哪位大神解释解释?

package Practice;
public class Addnofor {

public static void main(String[] args) {
System.out.println(add(0,1));
}
public static int add(int sum,int i){
while(i<=100){
sum+=i;
i++;
add(sum,i);
}
return sum;
}
}

1个回答

public static int add(int sum,int i){
if (i > 100) return sum;
return add(sum + i, i + 1);
}

guopeng2258
guopeng2258 回复caozhy: 恩,好的,谢谢
大约 4 年之前 回复
caozhy
回答这么多问题就耍赖把我的积分一笔勾销了 回复guopeng2258: 递归的思想来自数学归纳法。初中数学课本上都有介绍。也可以自己google下。
大约 4 年之前 回复
guopeng2258
guopeng2258 回复caozhy: 可以问一下您对递归是怎么理解的呢?
大约 4 年之前 回复
caozhy
回答这么多问题就耍赖把我的积分一笔勾销了 回复guopeng2258: 你代码根本不是递归。
大约 4 年之前 回复
guopeng2258
guopeng2258 您好,谢谢您的回答,可以咨询一下,我的代码为什么那么慢,有哪些方面的问题导致其运行那么慢呢?谢谢
大约 4 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐