前言:是什么?什么作用?为什么?本文将从这三个方面展开讨论。
一、时间复杂度与空间复杂度是什么?
任何程序运行都需要耗费计算机资源,算法的复杂性体现在运行该算法时的计算机所需资源的多少上,计算机资源最重要的是时间和空间(即寄存器)资源,因此复杂度分为时间复杂度和空间复杂度。
时间复杂度:
1、一个算法花费的时间与该算法中语句的执行次数成正比,也就是说执行次数越多,花费的时间越多。执行次数又称为语句频度或时间频度,记为T(n)。
2、一般情况下,算法中基本操作重复执行的次数是问题规模为n的某个函数,用T(n)表示,若有某个辅助函数f(n),使得当n趋近于无穷大时,T(n)/f (n)的极限值为非零的常数,则称f(n)是T(n)的同数量级函数。记作T(n)=O(f(n)),称O(f(n)) 为算法的渐进时间复杂度,简称时间复杂度。( ps:是字母O而不是数字0 )
原文:https://www.cnblogs.com/liuxuande/p/14082246.html