(数据结构与算法)时间复杂度和空间复杂度 9/18

  为了评判一个算法的好坏 因为在不同机器在不同的语言 在不同的编译器下等等等各种因素影响,我们不便进行评判,因此引出时间复杂度和空间复杂度。

 O(n)大O表示法:因为计算机的运算量很大所以只关心每个数的数量级即可,

计算方法:只保留最高阶的n并且把系数化为1

  

用以下的表来判断最高阶

35efde9362594a84beabef51387fa1f4.png

数学函数表示

8bf7ccb6aa834419ad42e66cc03e43cc.png

口诀:常对幂指数阶 

结论1:顺序执行的语句只是影响常数项,可以忽略。

结论2:只需要关心循环中的一条基本操作区分析他的执行次数与n的关系即可。

如果是嵌套循环呢?

把内层和外层乘起来n^2

e394cd0e96f14f6785a0e4b93e321fad.png

只关心最内层与n的关系

练习

db103a669552437bab8509d2a6ac9b7e.png

循环里面不是加而是✖️

假设循环了x次

2^x=n

空间复杂度

 原地工作--算法所需的内存不变

dabc4471335c45859e05af6c06b7dfc1.png

  和时间复杂度同样的方法,因为计算机是对大量的数据进行处理,所以这种衡量只关系数量级就行。

递归函数分析

d140f78c946b40408e283de1d3e2a9e0.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值