public class Test01 {
int sum=0;
int i=1;
public static void main(String[] args) {
Test01 t = new Test01();
long startTime = System.nanoTime(); // 获取开始时间 ,以纳秒为单位
t.sum(100,0);
long endTime = System.nanoTime(); // 获取结束时间 ,以纳秒为单位
System.out.println("程序运行时间: " + (endTime - startTime) + "ms");
long startTime1 = System.nanoTime(); // 获取开始时间 ,以纳秒为单位
t.t_sum(100);
long endTime1 = System.nanoTime(); // 获取结束时间 ,以纳秒为单位
System.out.println("程序运行时间: " + (endTime1 - startTime1) + "ms");
}
//尾递归
public int sum(int num,int sum1){
if(num==0){
return sum1;
}else{
return sum(num-1,sum1+num);
}
}
//递归
public int t_sum(int num){
if(i<=num){
sum+=i;
i++;
t_sum(num);
}
return sum;
}
}