用数学公式,时间复杂度高下立判。
public static int sumType1(int beginNum ,int endNum)//输入开始与结束的数字公差是1
{
int sum=(beginNum+endNum)*(endNum-beginNum+1)/2;
return sum;
}
public static int sumType2(int beginNum,int endNum,int dex)//输入第一项第n项以及公差
{
int count =(endNum-beginNum)/dex +1;
return count*beginNum+(count-1)*(count)*dex/2;
} |