zoukankan      html  css  js  c++  java
  • 算法

    计算 1 + 2 + ... + 99 + 100
    算法一:

    #include <stdio.h>
    #include <string.h>
    
    int main( )
    {
        int i,sum = 0,n =100;
        for (i = 1;i<=n;i++) {
            sum = sum + i;
        }
        printf("%d",sum);
        return 0;
    }
    

    条件改大一些,

    #include <stdio.h>
    #include <string.h>
    
    int main( )
    {
        int i,sum = 0,n =100000000000;
        for (i = 1;i<=n;i++) {
            sum = sum + i;
        }
        printf("%d",sum);
        return 0;
    }
    
    
    2103145472
    Process returned 0 (0x0)   execution time : 4.061 s
    Press any key to continue.
    

    执行了4秒钟。

    算法二:

    #include <stdio.h>
    #include <string.h>
    
    int main( )
    {
        int i,sum = 0,n =100;
        sum = (1 + n) * (n/2);
        printf("%d",sum);
        return 0;
    }
    
    

    改大一些,

    #include <stdio.h>
    #include <string.h>
    
    int main( )
    {
        int i,sum = 0,n =100000000000;
        sum = (1 + n) * (n /2);
        printf("%d",sum);
        return 0;
    }
    
    2103145472
    Process returned 0 (0x0)   execution time : 0.206 s
    Press any key to continue.
    
    

    执行0.2秒。

    点评: 算法二更加高效。

    算法就是你泡妞的技巧和策略,有的朋友技术高,三下五除二就拿下。

    对于给定的问题,可以有多种解决的算法。

    掌握经典算法,加以灵活运用,产生新的算法。

  • 相关阅读:
    编译环境
    好看的函数图
    R语言学习
    python画图
    C++技巧
    DLL
    进程共享数据
    八数码问题
    document.getElementsByTagName()返回的是数组document.getElementsById()是dom内容
    使用Math.max,Math.min获取数组中的最值
  • 原文地址:https://www.cnblogs.com/jiqing9006/p/8278738.html
Copyright © 2011-2022 走看看