C/C++教程

算法的空间复杂度(Space Complexity)

本文主要是介绍算法的空间复杂度(Space Complexity),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

空间复杂度(Space Complexity)是对一个算法在运行过程中临时占用存储空间大小的量度,记做S(n)=O(f(n))。

常见的空间复杂度量级有:

  • 常数阶O(1)
  • 线性阶O(n)

常数阶O(1)

// 算法执行所需要的空间不随某个变量的大小而变化,则该算法的空间复杂度为一个常量,即O(1)。
int x = 13;
x = x + 1;
x = x + 1;
x = x + 1;
x = x + 1;
x = x + 1;
x = x + 1;
x = x + 1;
x = x + 1;
x = x + 1;

线性阶O(n)

# include <stdio.h>

int main()
{
    int x[n];
    int i;

    / *初始化数组元素 * /
    for (i = 0; i < n; i++)
    {   
        x[i] = i + 1;
    }

    return 0;
}

 

这篇关于算法的空间复杂度(Space Complexity)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!