概念
在计算机科学中,时间复杂性,又称时间复杂度,算法的时间复杂度是一个函数,它定性描述该算法的运行时间。这是一个代表算法输入值的字符串的长度的函数。时间复杂度常用大O符号表述,不包括这个函数的低阶项和首项系数。使用这种方式时,时间复杂度可被称为是渐近的,亦即考察输入值大小趋近无穷。
常数阶
例如:
#include <cstdio>
using namespace std;
int main () {
int a, b;
scanf ("%d %d", &a, &b);
int c = a + b;
printf ("%d", c);
return 0;
}
这一段代码,不管输入的a
和b
的值为多少,都只会运行一次,所以记为常数阶: O ( 1 ) O (1) O(1)
线性阶
例如:
#include <cstdio>
using namespace std;
int main () {
int n, sum = 0;
scanf ("%d", &n);
for (int i