简单的时间复杂度分析
O(1), O(n), O(lgn), O(nlogn), O(n^2)
简单地说:大O描述的是算法的运行时间和输入数据之间的关系
为什么要用大O ,叫做O(n)? 忽略常数。实际时间T=c1*n+c2
T=2*n+2 O(n)
T=2000*n+10000 O(n) 渐进时间复杂度
以上两个算法都是O(n)算法,换句话说就是线性时间算法,算法消耗的时间和输入数据的规模是呈一个线性关系的
T=1*n*n+0 O(n^2) 描述n趋近于无穷的的情况
以上这个算法就是说算法消耗的时间和输入数据的规模是呈一个平方关系的
T=2*n*n+300n+10 O(n^2)
以上这个算法仍为O n方,原因是n趋近于无穷的时候,这个低阶项太小可以忽略不计