01_算法复杂度

本文深入探讨了算法性能分析的关键,特别是时间复杂度的衡量,通过输入规模影响的探讨,介绍了O(n)和O(g(n))的复杂度概念,并强调了在评估时不考虑硬件等因素。讲解了常见复杂度记法及其在实际应用中的意义。
摘要由CSDN通过智能技术生成

01_算法复杂度

分析算法复杂度即是分析比较算法性能

分析算法性能从两个方面考虑:

  1. 运行时间(运行程序所要花费的时间)
  2. 运行空间出发(运行程序所需要的内存)

一般主要考虑算法的时间复杂度,通过输入的规模来量化算法运行的时间,复杂度是随着输入规模增大的增长趋势。

影响时间复杂度的因素有很多,例如:

  • 硬件
  • 编译器
  • 处理器
  • 操作系统安排处理顺序等
    因此在考虑时间复杂度时将不考这些影响,假定计算机每步操作都需要一个固定的时间。

算法复杂度记法
O ( n ) O(n) O(n)这个集合当 n n n足够大时,增长趋势小于线性函数
在这里插入图片描述
O ( g ( n ) ) = { f ( n ) ∣ ∃ c , n 0 , s . t . , 0 ⩽ f ( n ) ⩽ c g ( n ) , n ⩾ n 0 } O(g(n)) = \{f(n)|\exists c,n_0,s.t.,0 \leqslant f(n) \leqslant cg(n), n \geqslant n_0\} O(g(n))={f(n)c,n0,s.t.,0f(n)cg(n),nn0}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值