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秒。

    点评: 算法二更加高效。

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

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

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

  • 相关阅读:
    c++中利用宏定义简化for循环使用
    UVA1152- 枚举 /二分查找
    acm 模板
    Xwindow的文章
    编程语言博客
    csh与bash比较
    关于锁与并发的资料总结
    linux su和sudo命令的区别
    对Memcached使用的总结和使用场景
    iptables配置——NAT地址转换
  • 原文地址:https://www.cnblogs.com/jiqing9006/p/8278738.html
Copyright © 2011-2022 走看看