美文网首页
[数据结构] 算法和算法的复杂度

[数据结构] 算法和算法的复杂度

作者: 原来是酱紫呀 | 来源:发表于2019-11-06 21:38 被阅读0次

1. 算法

算法是对问题求解步骤的描述,同故宫有限序列的指令来实现。

五大特征

  1. 有穷性:有限步之后结束 不会出现无限循环
  2. 确定性:不存在二义性,算法的每个步骤被精确定义
  3. 可行性:比如受限于计算机的计算能力,有些算法虽然理论上可行,但实际上无法完成。
  4. 输入:能够计算机处理的各种类型数据
  5. 输出: 一至多个程序输出结果

2. 复杂度

(1)时间复杂度(T(n))= O(f(n))
计算方法:取算法时间增长最快的那个函数项,把它的系数改为1
常用的时间复杂度大小关系:
O(1)<O(log_2 n)>O(n)<O(n log_2 n)<O(n^2)<O(n^3)<O(2^n)

(2)空间复杂度(S(n))= O(g(n))
辅助空间:除了存储算法本身的指令、常数、变量和输入数据外,还需要存储对数据操作的存储单元。
算法原地工作是指算法所需的辅助空间是常量,即O(1)。

相关文章

  • 一位算法工程师的自我修养

    数据结构与算法 基本算法思想动态规划贪心算法回溯算法分治算法枚举算法 算法基础 时间复杂度 空间复杂度 最大复杂度...

  • 1.公共知识——数据库结构和算法

    算法 算法的定义 算法的特征 算法的基本要素 算法的复杂度 数据结构 数据结构的定义 逻辑结构和物理结构 线性结构...

  • 数据结构(一)时间复杂度

    简介:如果想对数据结构和算法有基本的了解和认识,那么算法复杂度是前提,算法复杂度包含时间复杂度和空间复杂度,具体概...

  • Python语言进阶

    Python语言进阶 数据结构和算法 算法:解决问题的方法和步骤 评价算法的好坏:渐近时间复杂度和渐近空间复杂度。...

  • Python-100天(二)-Python语言进阶

    数据结构和算法 算法:解决问题的方法和步骤 评价算法的好坏:渐近时间复杂度和渐近空间复杂度。 渐近时间复杂度的大O...

  • 【Python 100天从新手到大师】Python语言进阶

    Python语言进阶 数据结构和算法算法:解决问题的方法和步骤评价算法的好坏:渐近时间复杂度和渐近空间复杂度。渐近...

  • 数据结构与算法之时间复杂度分析

    复杂度分析,是所有数据结构与算法的重中之重,复杂度分析是整个算法学习的精髓,只要掌握了它,可以说数据结构和算法的内...

  • 数据结构与算法 - 查找

    数据结构与算法系列文章数据结构与算法 - 时间复杂度数据结构与算法 - 线性表数据结构与算法 - 树形结构数据结构...

  • 数据结构与算法 - 树形结构

    数据结构与算法系列文章数据结构与算法 - 时间复杂度数据结构与算法 - 线性表数据结构与算法 - 树形结构 目录 ...

  • 数据结构01-时间复杂度与空间复杂度

    1:算法复杂度 1.1:数据结构和算法定义 数据结构(data structure):用来存放和管理(比如插入,删...

网友评论

      本文标题:[数据结构] 算法和算法的复杂度

      本文链接:https://www.haomeiwen.com/subject/uwbjyctx.html