主定理

先介绍几个符号的含义。

符号Θ,读音西塔,既是上界也是下界,等于,严格贴紧。

符号O,读音殴,表示上界,小于等于,贴紧未知。

符号o,读音也是殴,小于,不贴紧。

符号Ω,读音偶眯嘎,表示下界,大于等于,贴紧未知。

符号ω,读音也是偶眯嘎,表示下界,大于,不贴紧。

上面的“贴紧”是我根据tight翻译过来的(不是很准确啊),大概就是是否严格等于的意思吧。

意思就是Θ是平均时间复杂度,O是最坏情况下的复杂度,Ω是最好情况下的复杂度。

假设我们有递推关系式:
T(n)=aT(nb)+f(n)

其中,n为问题的规模、a为递推下子问题的数量,nb为每个子问题的规模,f(n)为递推后做的额外的计算工作。

1.假设存在常数ϵ>0,使得f(n)=O(nlogb⁡(a)−ϵ),则T(n)=Θ(nlogba)。

具体意思是f(n)的上界是n的幂次,且logb(a)比这个幂次要大,则时间复杂度为这个n的logb(a)次。

例子:二叉树的遍历。T(n)=2T(n2)+Θ(1)。其中a=2,b=2,f(n)=1,此时ϵ=1。T(n)=Θ(n)。

2.假设存在常数k≥0,使得f(n)=Θ(nlogbalogkn),则T(n)=Θ(nlogbalogk+1n)。

具体意思是f(n)是n的logb(a)次,再乘以一个log,则复杂度是f(n)的复杂度再乘以一个log。

例子:归并排序。T(n)=2T(n2)+Θ(n)。其中a=2,b=2,f(n)=n,此时k=0。T(n)=Θ(nlog2n)。

3.假设存在常数ϵ>0 ,有f(n)=Ω(nlogb⁡(a)+ϵ),同时存在常数c<1以及充分大的n满足 af(nb)≤cf(n)那么 T(n)=Θ(f(n))。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值