zoukankan      html  css  js  c++  java
  • 算法基础

    1.算法(程序 = 数据结构 + 算法)

    计算算法主要分为两类:数值运算算法和非数值运算算法。 

    如:1+3+5+7+……+99+100

    对于这样的累加计算,可以使用下面的C语言程序实现:
    int loop = 0, sum = 0;
    for(loop=1;loop<100;loop=loop+2)
    {
    sum = sum + loop;
    }
    sum = sum + 100;  

     如果利用数学算法,可以使程序效率提高近10倍。数学运算中,可以使用和差算法计算这样的加和运算,公式为:

    sum = n*(a1+an)/2
    使用C语言实现的程序为:
    int sum = 0;
    sum = 49 * (99 + 1) / 2.0;
    sum = sum +100; 
    2.数据结构

         C语言中最常用的非数值算法主要包括排序算法和查找算法。在这些算法的理论设计中,有时需要用到某些数学模型,通常称为数据结构。典型的数据结构类型主要有链表、二叉树、图等。 

    3.排序算法  

         排序,是指将一系列数据按照某种规则按照一定的顺序进行排列,以符合实际处理需求的操作过程。

      例如,对于一组数据,可以按照由大到小的顺序排序,也可以按照由小到大的顺序排序。对于人员姓名,可以按照首字母前后顺序排序,也可以按照姓名长度排序等等。一个合理的排序算法可以使程序执行效率提高,程序健壮性增强。

         排序常用的有冒泡排序,快速排序,选择排序,合并排序等。

    4.查找

           查找算法是程序设计中最常用的算法之一。所谓查找,就是要在一组数据中找出某个特定的元素,若找到,则执行某种预定的动作,若未找到,则输出提示信息,并执行相应的操作。

            查找的算法很多,常用的查找算法是顺序查找算法和折半查找算法。

  • 相关阅读:
    5.Spring高级装配(根据profile的激活状态决定使用的环境) 以及 条件化 Bean
    4.SpringJunit4ClassRunner
    3.Spring配置可选方案
    2.Spring容器bean的生命周期
    1.使用spring上下文容纳你的Bean
    maven 打包跳过 Junit test
    HTML5中meta name="viewport"
    二、JavaScript this
    VIM_插件
    VBS_DO...Loop
  • 原文地址:https://www.cnblogs.com/hanjun/p/2798559.html
Copyright © 2011-2022 走看看