算法学习 三 >> 认识算法的效率(循环设计)
2021-05-19 00:31
                         标签:algo   复杂   https   img   ...   NPU   blob   输出   .com    引子:   例1:求1+2+....+n.       例2:求1-2+3-4.....+(-1)^(n-1)n.   时间复杂度:O(n)  例3:求1-3+5-7......(-1)n-1(2n-1).    时间复杂度:O(n) 例4:1!-3!+5!-7!.....(-1)(n-1)(2n-1)!      时间复杂度:O(n2)  时间复杂度:O(n) 例5:小试牛刀>>>求>>>  Sn = 1 / 1! - 1 / 4! + 1 / 7!..... 1 /  [ (-1)(n-1)(3n-2)! ]的n项和Sn。   >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>参考答案? > 认识算法的效率(循环设计),soscw.com" target="_blank">算法学习 三 >> 认识算法的效率(循环设计) 标签:algo   复杂   https   img   ...   NPU   blob   输出   .com    原文地址:https://www.cnblogs.com/sunrisepeak/p/9716344.html
int s = 0;
for(int i = 1; i )
        s = s + i;           S = n(n+1)/2
int s = 0;
for(int i = 1; i )
{
    sign = -1 * sign;
    s = s + sign * i;        
    
}  
int s = 0;
for(int i = 1; i )
{
    sign = -1 * sign;
    s = s + sign * (2*i-1);        
}  
int s = 0;
for(1到2n-1)
{
    求2n-1阶乘;
    判断是正还是负后赋值给t;
    s = s + t; 
}
int s = 0, signal = -1;
for(int i = 1; i )
{
    int t = 1;
    for(int j = 2; j 1; j++)
        t = t * j;                //求阶乘
    signal = - signal;            //正负交替
    s = s + signal*t;             //求和
}
int s = 0, signal = -1, t = 1;
for(int i = 1; i )
{
    if(i > 1)
        t = t*(2*n-2)*(2*n-1);     //求2n-1的阶乘
    signal = - signal;            //正负交替
    s = s + signal*t;             //求和
}
 
 
下一篇:转:.NET面试题汇总(三)
文章标题:算法学习 三 >> 认识算法的效率(循环设计)
文章链接:http://soscw.com/index.php/essay/87436.html