zoukankan      html  css  js  c++  java
  • [数据结构和算法]算法基本概念

    算法基本概念:

    算法:
    用来对数据的操作作描述,是对问题求解的步骤的描述。是一系列将输入转为输出的计算步骤

    算法复杂度:分为时间复杂度和空间复杂度
    时间复杂度:算法中所有语句的频度之和用T(n)表示,记为T(n) = O(n)

    常见时间复杂度递增次序
    常数 O(1) , 对数阶O(log2^n) , 线性阶O(n) , 线形对数阶O(nlog2^n),平方阶O(n^2),立方阶O(n^3),指数阶O(2^n),O(n!),O(n^n)
    当n值增大,算法时间复杂度即变大,执行效率变低

    最坏时间复杂度:
    最坏情况下的时间复杂度称为最坏时间复杂度,一般讨论的都是最坏时间复杂度

    平均时间复杂度:
    指所有可能的输入实例均以等概率出现的情况下,算法执行的时间复杂度

    算法空间复杂度:
    指在算法执行过程中,除代码本身和输入输出数据所占的空间外,临时开辟的存储空间。用S(n)表示,记为S(n) = O(1)

    算法的时间复杂度和空间复杂度合称为算法的复杂度


    常见算法:
    一.排序算法:
      1.插入排序
        a.直接插入排序
        b.折半插入排序

      2.交换排序
        a.冒泡排序
        b.快速排序

      3.选择排序
        a.直接选择排序

      4.归并排序


    二.插入算法:

  • 相关阅读:
    浅谈单调栈、单调队列
    关于博客迁移
    高二四班抽号
    数据结构
    图论
    洛谷 P3817 小A的糖果
    洛谷 P4016 负载平衡问题
    洛谷 P4306 [JSOI2010]连通数
    洛谷 P4822 [BJWC2012]冻结
    洛谷 P4568 [JLOI2011]飞行路线
  • 原文地址:https://www.cnblogs.com/hellenism/p/3744862.html
Copyright © 2011-2022 走看看