算法时空复杂度分析

Big O 表示法

1、只保留增长速率最快的项,其他的项可以省略。

2、Big O 记号表示复杂度的「上界」。

非递归算法中的时间复杂度分析

这里注意嵌套循环中的时间复杂度。

数据结构 API 的效率衡量方法(摊还分析)

如果想衡量数据结构类中的某个方法的时间复杂度,不能简单地看最坏时间复杂度,而应该看摊还(平均)时间复杂度。

递归算法的时间/空间复杂度的分析方法

递归算法的时间复杂度 = 递归的次数 x 函数本身的时间复杂度

递归算法的空间复杂度 = 递归堆栈的深度 + 算法申请的存储空间

或者再说得直观一点:

递归算法的时间复杂度 = 递归树的节点个数 x 每个节点的时间复杂度

递归算法的空间复杂度 = 递归树的高度 + 算法申请的存储空间

相关推荐
拉拉拉拉拉拉拉马7 分钟前
Windsurf 最新版进阶讲解:从 Cascade 到 Devin Local,重新理解 AI 编程工作流
人工智能·算法
Mr_pyx9 分钟前
面试题记录
jvm·数据结构·算法·spring·mybatis
zzzsde10 分钟前
【Linux】线程同步和互斥(1):线程互斥与加锁实现
linux·运维·服务器·开发语言·算法
努力努力再努力wz18 分钟前
【C++高阶数据结构系列】:时间轮定时器详解:原理分析与代码实现,带你从零手撕时间轮!(附时间轮的实现源码)
c语言·开发语言·数据结构·c++·qt·算法·ui
mmz120741 分钟前
广搜题目练习(c++)
c++·算法
YuanDaima204841 分钟前
贪心算法基础原理与题目说明
数据结构·人工智能·python·算法·贪心算法·手撕代码
NashSKY42 分钟前
波束成形MVDR (最小方差无失真响应) 算法数学原理解析
算法·矩阵
人道领域1 小时前
【LeetCode刷题日记】513.二叉树左下角值的三种解法:从常规BFS到DFS的优雅之旅
数据结构·算法·leetcode·深度优先·广度优先
小哈蒙德1 小时前
基于deepSeekV4Pro(thinking)研究pointPillar的历程
python·算法
兰令水1 小时前
topcode【随机算法题】【2026.5.16打卡-java版本】
java·数据结构·算法