首页 > 编程语言 > 详细

绪论算法复杂度

时间:2016-12-19 08:06:16      阅读:293      评论:0      收藏:0      [点我收藏+]

常见级数算法复杂度:

1,算数级数:与末项平方同阶

T(n)=1+2+3+...=n(n+1)/2=O(n2)

2,幂方级数:比幂次高出一阶

T2(n)=12+22+32+...n2=n(n+1)(2n+1)/6=O(n3)

T3(n)=13+23+33+...n3=n2(n+1)2/4=O(n4)

T4(n)=14+24+34+...n4=n(n+1)(2n+1)(3n2+3n-1)/30=O(n5)

3, 几何级数(a>1):与末项同阶

Ta(n)=a0+a1+a2+...an=(an+1-1)/(a-1)=O(an)

4,收敛级数

1/1/2+1/2/3+1/3/4+...1/(n-1)/n=1-1/n=O(1)

1+1/22+...1/n2<1+1/22+...=∏2/6=O(1)

 

常见循环复杂度

 

for(int i=0;i<n;i++)
    for(int j=0;j<n;j++)
        01operation(i,j)
算数级数:
i=0n-1=n+n...+n=n*n=O(n2)
for(int i=0;i<n;i++)
    for(int j=0;j<i;j++)
        01operate(i,j);
算数级数:
i=0n-1=0+1+2+...n=n(n-1)/2=O(n2)
for(int i=1;i<n;i<<=1)
    for(int j=0;j<i;j++)
        01operate(i,j);
几何级数:
1+2+4+...+2^log2(n-1)=....=O(n)

 

绪论算法复杂度

原文:http://www.cnblogs.com/peixiguang/p/6196047.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!