在学习数据结构的过程中,时间复杂度是我们最先接触到的概念,我们一般用时间复杂度判断算法的优劣,
但是课本中并没有详细介绍各种代码时间复杂度的例子,因此,这里对常见的时间复杂度以及代码实例举一些例子,供大家参考。
一.常见的时间复杂度
时间复杂度由小到大:
1.常数阶O(1)
2.对数阶O(log2n)
3.线性阶O(n)
4.线性对数阶O(nlog2n)
5.平方阶O(n^2)
6.立方阶O(n^3)
7.k次方阶O(n^k)
8.指数阶O(2^n)
二.代码分析
1).常数阶O(1)
无复杂的循环结构,无论代码多少行,时间复杂度都是O(1)
int i=1;
int j=2;
i++;
j++;
int temp;
temp=i+j;
2).对数阶O(log2n)
在while循环中,对于参数进行对数型增长,当达到某一个值时,跳出循环,例如:N=a^x,即a的x次方等于N,记