一、时间复杂度
定义:用来评估算法运行效率的一个式子。
例如:此处的O(1) 详单与一个时间单位
接下来我们看下面两个式子:
如果按照上面的定义,那么打印三次相当O(3),下面的循环相当于O(n2+1)
但是实际不是这样的
因为这里的时间单位并不是一个精确的时间单位,而是一个大概估计值 ;在计算机中,打印一次和打印三次的时间差不多;此处的时间复杂度对笔者自己而言有点类似于高数中的无穷小概念。
当算法中出现循环规模使得减半,一定会出现logn。
小结
- 时间复杂度是用来评估算法运行时间的一个式子(单位)。
- 一般来说,时间复杂度高的算法比复杂度低的算法慢。
- 常见的时间复杂度有:O(1)<O(logn)<O(n)<O(nlogn)<O(