算法度量 Big O, Big Omega, Big Theta

来源:互联网 发布:用友软件出报表 编辑:程序博客网 时间:2024/05/22 10:39
A、大O的定义:
  如果存在正数c和N,对于所有的n>=N,有f(n)<=c*g(n),则f(n)=O(g(n))
B、Big Omega的定义
  如果存在正数c和N,对于所有的n>=N,有f(n)>=c*g(n),则f(n)=Omega(g(n))
C、Big Theta的定义

  如果存在正数c1,c2和N,对于所有的n>=N,有c1*g(n)<=f(n)<=c2*g(n),则f(n)=Theta(g(n))

 

1、O是一个算法最坏情况的度量(g(n)是这个算法的上界,用上界来衡量,是最坏的情况)
2、Big Omega是最好情况的度量(g(n)是这个算法复杂度的下界,用下界来衡量,是最好的情况)
3、Big Theta表达了一个算法的区间,不会好于某某,不会坏于某某

0 0
原创粉丝点击