1. 主页
  2. 文档
  3. Level5题解(1-10)
  4. 附1. 程序设计小结
  5. 算法

算法

算法: 解决一个实际问题的方法和具体步骤。算法是程序设计的灵魂。

算法特征

  • 可行性
  • 确定性
  • 有穷性
  • 输入
  • 输出

一个算法有一个或多个输出,以反应对输入数据加工后的结果,这是算法设计的目的。它们是同输入有着某种特定关系的量。

算法的基本结构

任何一个算法都可以表示成三种基本结构:顺序结构、分支结构和循环结构。

  • 顺序结构

顺序结构是一种最简单、最基本的控制结构。计算机从前往后,依次执行所有的操作步骤,不遗漏、不重复

  • 选择结构

选择结构由一个“判断条件”和两个“分支”构成,根据判断条件的成立与否,决定执行哪一条分支路径

  • 循环结构

循环结构又称重复结构,目的是将某一条或某一组语句重复执行若干次,其中的“某一条或某一组语句”称为循环体。

算法的时间复杂度

  1. 时间复杂度:算法运行需要的时间, 一般将语句执行次数作为时间复杂度

算法的空间复杂度

  • char/bool : 8bit 比特, 1字节 1B
  • int  : 32bit 比特, 4字节 4B
  • float : 32b 4B
  • long long: 64bit 比特, 8B字节

基础算法

  • 高精度计算
  • 穷举算法
  • 排序
  • 递推
  • 递归
  • 搜索
  • 贪心
  • 分治
  • 动态规划