当前位置: 首页 > article >正文

算法的空间复杂度


一.程序运行时的内存需求:


二.空间复杂度:

例一:

形参n和i各占4个字节,共8字节,是常数,可忽略。而数组flag所占字节是4 * n个,不是常数,不可忽略

例二:

例三:


三.函数递归调用带来的内存开销:

例一:

n为5和n为4时都有a,b,c的创建,只是地址不同,n为其他值时也一样。

形参n和a,b,c都固定各占4个字节,共16个字节,所以每一次函数调用都大概需要16个字节来存储相应的信息

即每一次aB个内存,而且共n次,刚好共占naB个内存

例二:

数组flag所占字节和n有关,每一次函数调用n都会变化,因此flag所占字节每一次都会变化。


四.总结:



http://www.kler.cn/a/284778.html

相关文章:

  • 信号量和线程池
  • git初始化和更新项目中的子模块
  • 三种单例实现
  • 力扣 LeetCode 27. 移除元素(Day1:数组)
  • 协程3 --- golang的协程调度
  • Mysql前言
  • 【Redis】持久化——rdb机制
  • 零基础国产GD32单片机编程入门(九)低功耗模式实战含源码
  • 掌握CHECK约束:确保数据准确性的关键技巧
  • 【网络】HTTPS——HTTP的安全版本
  • GalaChain 全面剖析:为 Web3 游戏和娱乐而生的创新区块链
  • 速盾:Nginx使用CDN之后获取真实的用户IP
  • 机器学习--核心要点总结
  • k8s 存储
  • Spark自定义函数例子
  • 初识Vue.js:从零开始构建你的第一个Vue项目
  • 【C++ 第十八章】C++11 新增语法(3)
  • 工业智能物联网关,智慧医疗生态圈的创新驱动
  • 【Python机器学习】NLP词中的数学——词袋
  • 学习之MySQL约束
  • 【60天备战软考高级系统架构设计师——第四天:需求获取与初步分析】
  • discuz Upload Failed.
  • 文件.硬盘.IO
  • 智能合约漏洞(三)
  • arm 模式栈初始化
  • Flask-RESTFul 之 RESTFul 的响应处理 之定制返回的 json格式