时间复杂度怎么算
时间复杂度计算公式如下
method1(){
System.out.println("祝你看了这篇文章");//执行1次System.out.println("诸事顺利");//执行1次System.out.println("万事如意");//执行1次}//1+1+1=3
method2()。
for(inti=0;i<5;i++){//i=0执行1次;i<5判断5+1次,等于5时判断后退出;i++执行5次System.out.println("点赞发财!");//执行5次}}//1+(5+1)+5+5=17
method3(intn)。
for(inti=0;i<n;i++){//i=0执行1次;i<n执行n+1次;i++执行n次System.out.println("点赞好运!");//执行n次,你会有n次好运哦}}//1+(n+1)+n+n=3n+2。
大O表示法如下:
上面的时间复杂度的表示还是较复杂,我们一般都使用大O表示法来简化表示时间复杂度。
1、复杂度为常数,如23,9999,等等都表示为O(1)。
2、复杂度包含n时,省略系数与常数项,只取n的最高阶项。
如:2n+45为O(n);4n^3+6n^2+n为O(n^3)。
3、复杂度为对数时:如log5(n)、log2(n)等等都表示为O(logn)。
4、省略低阶,只取高阶(即取最大的)。
如:logn+nlogn表示为O(nlogn)。