分享链接:https://blog.csdn.net/haha223545/article/details/93619874
时间复杂度:执行算法需要消耗的时间,越快越好。
空间复杂度:执行算法需要消耗的存储空间大小,越小越好。
大O表示法:用来表示代码执行时间的增长趋势的。对于空间复杂度来说,为执行空间增长的趋势。
int a = 1;
int b = 2;
int c = 3;
以上时间复杂度为O(1)。 常数阶
for(i = 1; i <= n; i++) {
j = i;
j++;
}
以上时间复杂度O(n)。 线性阶
for(x = 1; i <= n; x++){
for(i = 1; i <= n; i++) {
j = i;
j++;
}
}
以上时间复杂度为O(n的平方)。平方阶
int i = 1;
int j = 2;
++i;
j++;
int m = i + j;
以上的空间复杂度为O(1)。常数阶
具体解释:如果算法执行所需要的临时空间不随着某个变量n的大小而变化,即此算法空间复杂度为一个常量,可表示为 O(1)。
int[] m = new int[n]
for(i = 1; i <= n; ++i) {
j = i;
j++;
}
以上空间复杂度为O(N)。线性阶