数据结构基础笔记005 空间复杂度

《数据结构基础》
作者: [美]Ellis Horowitz 霍罗维兹
译者: 朱仲涛
出版社: 清华大学出版社
ISBN: 9787302186960
豆瓣读书 中查看本书

空间复杂度

定义:空间复杂度是程序运行所需的存储空间。

程序运行时所需的空间包括两部分:

  1. 定长空间需求:即与程序输入、输出无关的空间,包括 指令空间(存储代码的空间)简单变量的存储空间定长结构变量(如结构体)的存储空间常量存储空间
  2. 变长空间需求:即与求解的问题实例相关的结构化变量所占空间大小。
    如果是递归程序,还应加上递归时所需工作空间的大小。
    给定问题实例I,程序P的变长空间记为SP(I)
    SP(I)通常为自变量定义在I的特征空间之上的一个数学函数。
    这些特征常常表现为关于I的输入、输出个数、长度或取值。
    例如:若输入是长度为n的数组,则n是一个实例特征,如果n是唯一的实例特征,那么SP(I)可以具体化为SP(n)。

任何程序所需空间总量是:
SP(I) = c + SP(I)
其中c表示定长空间需求。

举例

  • C语言的参数传递方法虽然也是传值调用,但如果传递的是数组参量,C只传递数组第一个元素的首地址,并不复制整个数组。(书P19,例1.7)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,463评论 19 139
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,955评论 18 399
  • 《ilua》速成开发手册3.0 官方用户交流:iApp开发交流(1) 239547050iApp开发交流(2) 1...
    叶染柒丶阅读 13,791评论 0 11
  • 一段情 走走停停 看路边风景 你眼中有我 我眼中有你 一回头 一场飞梦 泪两行
    安小白阅读 1,865评论 0 0
  • 1、周末雷打不动的带娃。 在孩子三岁之前, 虽然我很爱自己的孩子, 可是我不喜欢带孩子, 内心还住着一个孩子, 还...
    王大蘑菇Michelle阅读 1,397评论 0 1