大O符号基础

作者: 㭍葉 | 来源:发表于2018-10-19 17:03 被阅读1次

大O符号(Big O notation), 又称渐进符号,是用于描述函数的渐近行为的数学符号。它是指用另一个(通常更简单的)函数来描述一个函数数量级的渐进上界。

  • 由德国数论学家保罗·巴赫曼首次引入,并由德国数论学家艾德蒙·朗道推广。
符号 名称
O(1) 常量时间
O(log n) 对数时间
O[(log n)c] 多对数时间
O(n) 线性时间
O(nlog* n) 线性迭代对数时间
O(nlogn) 线性对数时间
O(n2) 平方
O(nc), Integer(c>1) 多项式时间
O(cn) 指数时间
O(n!) 阶乘时间

在n趋于无穷大时,这些函数从上到下增长越来越快。
即在用于描述时间复杂度时,随着问题规模的增大,从上到下所需要消耗的时间越来越多。


相关概念:
多项式时间(Polynomial time)即指一个问题的计算时间m(n) = O(nk ),k为常量值。
数学家有时把“如多项式时间长的算法”视为快速计算。

超多项式时间 即当计算规模足够大,解题时间将大大超过任何多项式时间的问题。


相关符号:
大Ω符号:大O符号表示函数在增长到一定程度时总小于某函数的常数倍,大Ω符号与大O符号正好相反,表示总大于。即:

大Θ符号是大O符号和大Ω符号的结合。即:


References:

相关文章

  • 大O符号基础

    大O符号(Big O notation), 又称渐进符号,是用于描述函数的渐近行为的数学符号。它是指用另一个(通常...

  • 学习笔记2020-06-04

    1、大O符号 大O代表上界符号。 2、下界符号 3、小o符号 4、下界符号2 5、阶相等符号

  • IOS开发_基础概念01

    1、大O符号(Big O notation); 2、 1、大O符号(Big Onotation); 1.1 简介:...

  • 渐进符号

    上界大O符号 定义:TODO 下界大Ω(Omiga)符号 定义:TODO 上界小o符号 定义:TODO 下界小ω(...

  • 大O符号

    算法复杂度的相对表示。 描述了一个算法如何执行和缩放。 描述了函数增长率的上限,可以考虑最坏的情况。 现在快速看一...

  • 大 O 符号

    大 O 符号[https://zh.wikipedia.org/wiki/%E5%A4%A7O%E7%AC%A6%...

  • 大O符号

    衡量一个算法的空间/时间的复杂度。注:具体使用,要根据对应的数据量的多次做出选择。 常用的复杂度: O(1) 索引...

  • 第2章:算法分析

    一. 数学基础 1.几个数学定义:其中使用最多的是大O符号 大O:增长率小于等于(上界) 大Ω:增长率大于等于(下...

  • 算法复杂度分析

    事后统计法 测试结果非常依赖测试环境测试结果受数据规模的影响很大 大 O 复杂度表示法 大O符号 大O符号(英语:...

  • iOS开发经验(22)-数据结构

    目录 时间复杂度-大 O 标记 1. 时间复杂度-大 O 标记 大 O,说的是字母 O,而不是数字 0。这个符号用...

网友评论

    本文标题:大O符号基础

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