自学内容网 自学内容网

算法学习笔记(Hello算法)—— 空间复杂度

空间复杂度(space complexity)用于衡量算法占用内存空间随着数据量变大时的增长趋势。这个概念与时间 复杂度非常类似,只需将“运行时间”替换为“占用内存空间”。

1.算法相关空间

算法在运行过程中使用的内存空间主要包括以下几种

  • 输入空间:用于存储算法的输入数据。
  • 暂存空间:用于存储算法在运行过程中的变量、对象、函数上下文等数据。
  • 输出空间:用于存储算法的输出数据。

暂存空间可以进一步划分为三个部分。

  • 暂存数据:用于保存算法运行过程中的各种常量、变量、对象等。
  • 栈帧空间:用于保存调用函数的上下文数据。系统在每次调用函数时都会在栈顶部创建一个栈帧,函数 返回后,栈帧空间会被释放。
  • 指令空间:用于保存编译后的程序指令,在实际统计中通常忽略不计。

2.常见类型

3.线性阶 𝑂(𝑛)

4.平方阶 𝑂(𝑛2 )

5.指数阶


原文地址:https://blog.csdn.net/m0_74972727/article/details/140622414

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!