c++中函数放在等号右边_算法导论学习笔记(二)函数的增长

这篇博客探讨了在C++中函数与等号的关系,特别是在算法导论的上下文中。文章介绍了定理3.1,阐述了如何用Ο和Ω记号来确定函数的渐进上界和下界,并通过实例说明了如何应用这些概念。此外,还解释了o记号表示非渐进紧缺的上界,强调了在等式和不等式中使用渐进符号可以忽略低阶项的细节。
摘要由CSDN通过智能技术生成

equation?tex=%5CTheta

equation?tex=%5CTheta%28g%28n%29%29%3Df%28n%29 :存在正常量c1,c2,n0,使得对所有n ≥ n0,有0 ≤ c1 * g(n) ≤ f(n) ≤ c2 * g(n)}

称g(n)是f(n)的一个渐进确界

PS:此处要求n足够大时f(n)是非负的

f51c958bd9ac18ca57926bd239ba52e1.png

equation?tex=O

equation?tex=%5Ctheta 记号渐进的给出了一个函数的上界和下界。当只有一个渐进上界时,使用Ο记号。

正式定义如下:

equation?tex=O%28g%28n%29%29%3Df%28n%29 ,存在正常量c,n0,使得对所有n ≥ n0,有0 ≤ f(n) ≤ c * g(n)。

d7bad00432ca7acf9a3d1a8fbee17258.png

equation?tex=%5COmega

正如Ο记号提供了一个函数的渐进上界一样,Ω记号提供了一个渐进下界。

正式定义如下:

equation?tex=%5COmega%28g%28n%29%29%3Df%28n%29 ,存在正常量c,n0,使得对所有n ≥ n0,有0 ≤ c * g(n) ≤ f(n)。

定理3.1:对任意两个函数f(n)和g(n),f(n)=

equation?tex=%5CTheta%28g%28n%29%29 ,当且仅当f(n)=O(g(n))和
equation?tex=f%28n%29%3D%5COmega%28g%28n%29%29

应用如下:如果有a

equation?tex=n%5E%7B2%7D +bn+c=
equation?tex=%5CTheta%28+n%5E%7B2%7D%29 ,则立即可以得出a
equation?tex=n%5E%7B2%7D +bn+c=
equation?tex=%5COmega%28+n%5E%7B2%7D%29 和a
equation?tex=n%5E%7B2%7D%2Bbn%2Bc =
equation?tex=O%28+n%5E%7B2%7D%29

等式和不等式中的渐进符号

当渐进记号独立于等式或者不等式的右边,有助于省略一个等式中无关紧要的细节,即省略低阶项。

例如:

equation?tex=T%28n%29%3D2T%28n%2F2%29%2B%5CTheta%28n%29 ,没有必要写出所有的低阶项。

当渐进记号出现在等式的左边,总有一种办法来选择等号右边的匿名函数使等式成立。

例如:对于2

equation?tex=n%5E%7B2%7D +
equation?tex=%5CTheta%EF%BC%88n%EF%BC%89=
equation?tex=%5CTheta%28+n%5E%7B2%7D%29 ,无论
equation?tex=%5CTheta%28+n%29 怎么取,总有
equation?tex=%5CTheta%28+n%5E%7B2%7D%29 使等式成立。

换言之,等式右边提供了较左边更少的细节。

o记号

o表示非渐进紧缺的上界

例如:

equation?tex=2n%5E%7B2%7D%3DO%28n%5E%7B2%7D%29 是渐进紧确的,但
equation?tex=2n%3DO%28n%5E%7B2%7D%29 不是,所以可以写成
equation?tex=2n%3Do%28n%5E%7B2%7D%29 ,就是渐进紧确的了。

equation?tex=%5Comega%E8%AE%B0%E5%8F%B7

equation?tex=%5Comega
equation?tex=%5COmega 的关系可类比o和O的关系,不赘述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值