时间复杂度
简单理解
时间复杂度就是用来方便开发者估算出程序的运行时间。
详细理解
1.同一个算法的时间复杂度不是一成不变的,和输入的数据形式有关系。随着数据规模n的增大,算法执行时间的增长率和f(n)的增长率相同,这称作为算法的渐近时间复杂度,简称时间复杂度,记为 O(f(n))。
2.什么是大O
在数学上
大O用于描述函数渐进行为的数学符号,更确切地说,它是用另一个(通常更简单的)函数来描述一个函数数量级的渐近上界。
计算机中
大O用来表示上界的,当用它作为算法的最坏情况运行时间的上界,就是对任意数据输入的运行时间的上界。
3.如何描述时间复杂度
在不同数据输入规模下的差异。不是时间复杂越低的越好,要考虑数据规模。
大O其实就是数据量级突破一个点且数据量级非常大的情况下所表现出的时间复杂度。