不上岸不许吃饭睡觉 2020-02-19 13:42 采纳率: 0%
浏览 1101

空间复杂度要不要把for循环里的i也算进去

对空间复杂度不太了解,今天在做算法题时候突然想到这个问题。
空间复杂度是仅仅算方法块内部的局部变量,还是要把for循环的i以及其他的在其内部定义的局部变量也算进去?(这个i算不算局部变量?如果算,是算for里的局部变量还是方法块内的局部变量)
另外就是求大神解释一下空间复杂度具体是怎么算的,谢谢!!!!!!
举个例子:

void del_1(Sqlist &L,Elemtype x){
        int m;
        for(int i =0; i <L.length; i++){
                if(x == L.data[i])
                        m = i;
        }
        for(int j = m; j <L.length; j++){
                L.data[j] = L.data[j+1];
        }
}

这个算是时间复杂度O(n),空间复杂度O(1)吗?

  • 写回答

1条回答 默认 最新

  • threenewbee 2020-02-19 14:11
    关注

    就这个问题,不用计算,因为i使用的空间不随数据量变化,始终是1,所以属于常数量,被忽略。
    这里没有使用额外的空间,时间复杂度O(n),空间复杂度O(1),是对的。

    评论

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog