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

【数据结构】算法的时间复杂度与空间复杂度

计算机考研408-数据结构笔记本之——第一章 绪论

1.2 算法和算法评价

1.2.2 算法效率的度量

算法效率的度量是通过时间复杂度和空间复杂度来描述的。

1.空间复杂度

算法的空间复杂度S(n)定义为该算法所需的存储空间,它是问题规模n的函数,记为

S(n) = O(g(n))

2.计算方法

与时间复杂度的计算方法类似,但在概念上有所不同。

(1)举例计算1 (常量计为1

假设一个int型变量占用4B内存。

①int n —— 4B                       ②int i = 1 —— 4B

S(n) = 4 + 4 = 8 = 常量 = O(1)        (常量计为1

算法原地工作:如上图代码所示,计算出来的空间复杂度是一个常量,即O(1),这就叫算法原地工作。

(2)举例计算2(只保留最高项且最高项系数视为1

假设一个int型变量占用4B内存。

①int n —— 4B                       ②int flag[n] —— 4nB                ③int i —— 4B

S(n) = 4 + 4n + 4 = 4n + 8 = O(n)   (只保留最高项且最高项系数视为1

(3)举例计算3(加法规则和乘法规则

(4)举例计算4(递归程序

http://www.lryc.cn/news/421191.html

相关文章:

  • PyCharm环境python开发上位机
  • ROS 2 参数使用
  • QT的Model-View实现大批量数据展示
  • 2024年8月7日(mysql主从 )
  • 接口/自动化测试 面试集合
  • 菜鸡勇闯第136场双周赛
  • 趋动科技陈飞:从小模型到大模型,AI时代下的数据中心建设
  • yolo v8 + flask部署到云服务器,以及问题记录
  • 【科研必备插件】easyscholar如何使文章显示期刊影响因子与分区等级
  • UE5 UrlEncode转换
  • 【QML】Qt.rgba()的正确使用方法
  • centos7.9 docker安装
  • spring操作数据库
  • Apache Flink中TaskManager,SubTask,TaskSlot,并行度之间的关系
  • 马斯克xAI新计划:人工智能模型Grok 2测试版即将发布
  • 【机器人学】6-4.六自由度机器人运动学参数辨识-机器人精度验证【附MATLAB代码】
  • 分销商城小程序系统渠道拓展
  • WPF篇(14)-ProgressBar进度条+Calendar日历控件+DatePicker日期控件
  • 链表高频题目和必备技巧
  • Vue3详细介绍,正则采集器所用前端框架
  • 数据集--COCO2017(快速下载)
  • 【管理咨询宝藏159】顶级咨询公司人力三支柱建设方案思路
  • 跨时钟域总结
  • 富婆和富公子都在看的负载均衡和Haproxy大全
  • VScode找python环境 (conda)
  • C# Winform序列化和反序列化
  • crc原理概述
  • C++要求或禁止在堆中产生对象
  • 为什么阿里开发手册推荐用静态工厂方法代替构造器?
  • 前端写法建议【让项目更加易于维护】