渐进时间复杂度

来源:互联网 发布:数据挖掘培训课程 编辑:程序博客网 时间:2024/05/21 14:47

在算法分析中,算法的效率很重要,这决定了一个算法对于大规模数据是执行一天,一个小时,还是一分钟。因此对于设计好的算法需要做一个基本的效率评估,通常会引入大O记号。
常用见的复杂度有一下几种:

  • 常数复杂度O(1)
  • 对数复杂度O(logn)
    lognc=clogn=O(logn),c

    32log22n+log10n+10=O(log22n)
  • 多项式复杂度O(nc)
    100n+200=O(n)

    (5n2)(3n2+8n+4)=O(nn2)=O(n3)

    一般地,
    aknk+ak1nk1+...+a1n+a0=O(nk),ak>0
  • 指数复杂度O(an)
    指数复杂度这个不是很懂,需要再研究一下。

这些复杂度在输入规模很大时候的关系如下:

O(logn)<O(n)<O(n)<O(nlogn)<O(n2)<O(n3)<O(2n)

以上。

原创粉丝点击