概述
实现
/**
* 数列 1 2 3 ... n ...
* 递归求数列的前n项和
* @param n
* @return
*/
private static long calSum(long n){
if (n==1) return 1;
else {
return n+calSum(n-1); // 前n项的和 即第n项的值+前n-1项的和
}
}
测试用例
public static void main(String[] args) {
long res1 = calSum(100);
log.info("数列 1 2 3 ... n ... 的前100项的和:{}",res1);
}
测试用例输出
扩展
用以上实现求数列 1 2 3 … n … 的前100000项、前100000000项的和会不会有什么问题?
最后
推荐阅读下我这篇博客。
好了,如果对你有帮助,欢迎点个免费的赞哦。