题意整理
- 给定数列9,99,999,…,9999999999。
- 求数列所有项之和。
方法一(循环)
1.解题思路
- 使用num记录数列中每一位,sum记录数列累加和。
- 然后通过循环模拟计算数列的每一项,并计算累加和。
- 循环结束,输出累加和sum。
动图展示:
2.代码实现
public class Main {
public static void main(String[] args) {
//sum记录数列之和,num记录数列中的每一位
long sum=0;
long num=0;
//循环
for(int i=1;i<=10;i++){
//计算数列每一位
num=num*10+9;
//求累加和
sum+=num;
}
System.out.println(sum);
}
}
3.复杂度分析
- 时间复杂度:循环次数固定为10次,所以时间复杂度为。
- 空间复杂度:需要额外常数级别的空间,所以空间复杂度为。