时间复杂度与空间复杂度

时间复杂度
时间复杂度.png
  • 时间复杂度O(1)
let i = 0;
i += 1;
  • 时间复杂度O(n)
for(let i = 0; i<n; i++) {
  console.log(i);
}
  • 时间复杂度计算
O(1) + O(n) = O(n) // O(n) 足够大所以O(1)忽略不计
O(n) * O(n) = O(n^2) // 比如嵌套循环
O(logN) // 求2的多少次方等于 N
let i = i;
while(i < n) {
  console.log(i);
  i *= 2;
}
空间复杂度(代码运行时占据的内存大小)
// O(1) 只声明了单个变量
let i = 0;
i += 1;

// O(n) list添加了n个值占用n个内存单元
let list = []
for(let i=0; i< n; i++) {
  list.push(i)
}
// O(n^2) 矩阵
const matrix = []
for(let i = 0; i<n; i++) {
  martrix.push([]);
  for(let j=0; j<n; j++) {
    martrix[i].push(j)
  }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容