数据结构与算法中的渐进分析
创作时间:
作者:
@小白创作中心
数据结构与算法中的渐进分析
引用
1
来源
1.
https://www.jc2182.com/dsa/dsa-asymptotic-analysis.html
渐进分析
算法的渐近分析是指定义其运行时性能的数学边界/框架。使用渐近分析,我们可以很好地得出算法的最佳情况,平均情况和最坏情况。渐进分析是输入范围,即,如果算法没有输入,则得出结论可以在恒定时间内工作。除了“输入”之外,所有其他因素都被认为是恒定的。渐进分析是指以数学计算单位计算任何运算的运行时间。例如,一个操作的运行时间被计算为f(n),对于另一操作,它的运行时间可能被计算为g(n2)。这意味着随着n的增加,第一操作的运行时间将线性增加,而当n增加时,第二操作的运行时间将呈指数增长。同样,如果n很小,则两个操作的运行时间将几乎相同。
通常,算法所需的时间分为以下三种:
- 最佳情况-程序执行所需的最短时间。
- 平均情况-程序执行所需的平均时间。
- 最坏的情况-程序执行所需的最长时间。
渐近符号
以下是常用的渐近符号来计算算法的运行时间复杂度。
- Ο表示法
- Ω表示法
- θ符号
Ο表示法
符号Ο(n)是正式的方式来表达一个算法的运行时间的上界。它测量的是最坏情况下的时间复杂度或算法完成所需的最长时间。
例如,对于函数f(n)
Ο(f(n)) = { g(n): 存在 c>0和n0,使得f(n)≤c。 对于所有n > n0的g(n)。 }
Ω表示法
Ω(n)是表示算法运行时间下限的形式化方法。它测量最佳情况下的时间复杂度或算法可能花费的最长时间。
例如,对于函数f(n)
Ω(f(n)) ≥ { g(n):存在c> 0和n0,使得g(n) ≤c 。 对于所有 n > n0的f(n)。 }
θ符号
θ(n)表示形式是算法运行时间的下限和上限。它表示如下-
例如,对于函数f(n)
θ(f(n)) = { 当且仅当对于所有n > n0,g(n) = Ο(f(n)) 且 g(n)=Ω(f(n))时,才可以使用g(n) 。 }
常见渐近符号
以下是一些常见的渐近符号的列表-
- 常数 −Ο(1)
- 对数 −Ο(log n)
- 线性 −Ο(n)
- n o (log n) log n −Ο(n log n)
- 平方 −Ο(n2)
- 立方 −Ο(n3)
- 多项式 −nΟ(1)
- 指数 −2Ο(n)
热门推荐
从毛坯到惊艳:116㎡现代奶油风,26万装修前后对比
乐理基础-和声小调、旋律小调
珠江医院举办“国际癫痫关爱日”科普活动
“语言之书”系列之34 – 老挝语
分层架构(Layered Architecture)详解:基础理论与核心概念
湖南长沙-张家界-凤凰古城-衡山环线自驾旅游攻略
肺癌的早期迹象都有哪些?
盛宣怀诞辰180年|中国第一家银行是如何创立的?
ootd是什么意思
南方水塔、长江珠江水系分水岭:贵州三江口集锦
路易体痴呆早期表现
智能物流与供应链管理:技术驱动的现代化物流解决方案
如何根据出勤天数计算工资?
摩托车车险包括哪些材料(摩托车车险包括哪些材料和费用)
监事职责和权限有哪些
UOM是什么意思?
存量房的法律困境与市场挑战
花生米对血糖有影响吗
中考诗词鉴赏——我寄愁心与明月:“明月”在诗中扮演什么角色?
申请版权:如何保护自己的歌曲创作?
全球公认十大日本女演员排名:从原节子到苍井优
春天一定要动手做青团,软糯好吃不甜腻,4种经典口味详细配方!
2025年全球投资者必备:【FT账户、NRA账户与OSA账户】全面解析
DMA的传输方式以及传输模式
进项发票进项抵扣如何做凭证?
车子解除抵押手续应该在哪里办理?
投资准备,场内标普500、纳斯达克100溢价大幅降低
突发脑出血性命垂危,西安市中医医院绿色通道全力救治生命
塑料行业材料回收保障措施
如何选择合适的物业公司?这些选择标准有哪些实际意义?