Skip to content

什么是时间复杂度?

Posted on:2024年7月22日 at 11:42

时间复杂度的计算并不是计算程序具体运行的时间,而是算法执行语句的次数。

随着n的不断增大,时间复杂度不断增大,算法花费时间越多。

常见的时间复杂度

计算方法

举个例子:如f(n)=3*n^4+3n+300 则 O(n)=n^4

通常我们计算时间复杂度都是计算最坏情况。计算时间复杂度的要注意的几个点:

举例如下:代码执行100次,是一个常数,复杂度也是O(1)。

let x = 1;
while (x < 100) {
  x++;
}

举例如下:在下面for循环当中,外层循环每执行一次,内层循环要执行n次,执行次数是根据n所决定的,时间复杂度是O(n^2)。

for (i = 0; i < n; i++) {
  for (j = 0; j < n; j++) {
    // ...code
  }
}

举例如下:在代码中,如果arr[i]不等于1的话,时间复杂度是O(n)。如果arr[i]等于1的话,循环不执行,时间复杂度是O(0)。

for (var i = 0; i < n && arr[i] != 1; i++) {
  // ...code
}
原文转自:https://fe.ecool.fun/topic/6b11a97d-74b0-4768-a8ae-33b6886da458