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

空间复杂度** 与 **所需辅助空间**

当我们说一个算法的 空间复杂度是 O(1)通常特指“辅助空间”是 O(1),即:除了输入数据本身之外,算法只使用常数级别的额外空间


✅ 正确认解:

O(1) 空间复杂度 ≈ O(1) 辅助空间

这表示:

  • 不随输入规模增长而增长的空间需求
  • 所使用的变量数量是固定的,比如只用几个整数、指针等

❗ 误区提醒:

  • 有些人可能会误以为 O(1) 表示整个程序的空间开销,包括输入数据,这通常是不对的。
  • 输入数据本身的空间(如数组、链表)在分析辅助空间复杂度时通常不计入空间复杂度中。

示例:原地反转数组

def reverse(arr):left, right = 0, len(arr) - 1while left < right:arr[left], arr[right] = arr[right], arr[left]left += 1right -= 1
  • 输入空间:O(n)
  • 辅助空间:O(1)(只用了常数个变量)
  • 空间复杂度:通常也称为 O(1),默认指辅助空间

总结:

说法通常含义
“空间复杂度是 O(1)”常常指辅助空间是 O(1),不包含输入输出空间

是否想看一个辅助空间是 O(n) 的对比例子?

相关文章:

  • LVGL源码学习之渲染、更新过程(1)---标记和激活
  • 我国脑机接口市场规模将破38亿元,医疗领域成关键突破口
  • SDC命令详解:使用all_inputs命令进行查询
  • 每天批次导入 100 万对账数据到 MySQL 时出现死锁
  • 一、对linux驱动文件编写时结构认识与记录
  • gpu硬件,gpu驱动,cuda,CUDA Toolkit,cudatoolkit,cudnn,nvcc概念解析
  • 操作系统 第2章节 进程,线程和作业
  • 【PhysUnits】3.3 SI 基础量纲单位(units/base.rs)
  • Leetcode刷题 由浅入深之字符串——541. 反转字符串Ⅱ
  • 振动临近失效状态,怎么频谱会是梳子?
  • API请求参数有哪些?
  • Modbus RTU 详解 + FreeMODBUS移植(附项目源码)
  • 【算法】:滑动窗口
  • 常见图像融合算法(alpha和金字塔融合)
  • 使用智能表格做FMEDA
  • Mysql--基础知识点--91.1--慢查询日志
  • 日常知识点之随手问题整理(思考单播,组播,广播哪个更省带宽)
  • RocketMQ 深度解析:架构设计与最佳实践
  • 学习黑客认识数字取证与事件响应(DFIR)
  • 修改docker为国内源
  • 河北邯郸一酒店婚宴发生火灾:众人惊险逃生,酒店未买保险
  • 国办印发《关于进一步加强困境儿童福利保障工作的意见》
  • 外交部:习近平主席同普京总统达成许多新的重要共识
  • 广州下调个人住房公积金贷款利率
  • 酒店取消订单加价卖何以屡禁不绝?专家建议建立黑名单并在商家页面醒目标注
  • 昆廷·斯金纳:作为“独立自主”的自由