时间性能分析——时间复杂度计算

  • 时间性能分析:算法占用cpu的多少
  • T(n):算法的频度
  • O(n):时间复杂度
    1.找出所有语句的频度并组成执行次数T(n)
    2.T(n)的数量级,忽略常量、低次幂和最高次幂的系数,f(n)=T(n)的数量级
    3.T(n)=O(f(n))
  • 时间复杂度与执行次数有关。
例:
int num1, num2; //频度为1 for(int i=0; i

【时间性能分析——时间复杂度计算】注意:log2(n)
循环x次,j=2^x ,当j=n时停止循环,2^x=n。log2(n)=x时停止 ,即循环次数为log2(n)。
T(n) = 2 + 4n + 3n*log2(n)
忽略掉T(n)中的常量、低次幂和最高次幂的系数。
f(n) = n*log(n)
T(n) =O(f(n))= O(n*log(n))
  • Ο(1)<Ο(logn)<Ο(n)<Ο(nlogn)<Ο(n2)<Ο(n3)<…<Ο(2^n)和Ο(n!)

    推荐阅读