参考答案

空间复杂度是对一个算法在运行过程中临时占用存储空间的大小。

计算方法

  • 忽略常数,用O(1)表示
  • 递归算法的空间复杂度=(递归深度n)*(每次递归所要的辅助空间)

仅仅只复制单个变量,空间复杂度为O(1)。

举例如下:空间复杂度为O(n) = O(1)。

let a = 1; let b = 2; let c = 3; console.log('输出a,b,c', a, b, c);

递归实现,调用fun函数,每次都创建1个变量k。调用n次,空间复杂度O(n*1) = O(n)。

function fun(n) { let k = 10; if (n == k) { return n; } else { return fun(++n) } }