算法导论 思考题 4-3

这篇内容主要讨论了算法导论中的思考题,涉及递归树和主方法在求解算法时间复杂度中的应用。通过对不同情况的分析,得出各问题的时间复杂度分别为:θ(n的log34次方)、θ(n)、θ(n 5/2)、θ(n)、θ(n)、θ(n)、θ(lgn)、θ(nlgn)和θ(n/lgn)。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

a. 利用主方法可得,T(n)=θ(n的log34次方)

b. n/f(n)=lgn,不能应用主方法

    共log3n+1层,每层代价n/lg n/(3的i次方),最后一层共n个θ(1)的结点,代价为θ(n)

    T(n)=∑n/lg n/(3的i次方)+θ(n)

           <∑n/lgn+θ(n)

           =n*log32+θ(n)

           =O(n)

    又因为T(n)最后一层代价为θ(n),所以T(n)=Ω(n)

    综上,T(n)=θ(n)

c. 利用主方法可得,T(n)=θ(n 5/2)

d. 利用主方法可得,T(n)=θ(n)

e. n/f(n)=lgn,不能应用主方法

    共lgn+1层,每层代价n/lg n/(2的i次方),最后一层共n个θ(1)的结点,代价为θ(n)

    T(n)=∑n/lg n/(2的i次方)+θ(n)

            <∑n/lgn+θ(n)

            =O(n)

    又因为T(n)最后一层代价为θ(n),所以T(n)=Ω(n)

    综上,T(n)=θ(n)

f. 递归树分为最长路径lgn+1和最短路径1/3*lgn+1

  根据最长路径,T(n)=O(n)

  又因为T(n)>=n,所以T(n)=θ(n)

g. 递归树共n层,每层代价1/(n-i)

    T(n)=∑1/(n-i)=lnn+c=θ(lgn)

h. T(n)=∑lg(n-i)=lg(n!)=θ(nlgn)

i.  T(n)=∑1/lg(n-i)  根据积分法,T(n)=θ(n/lgn)

j.  递归树共lglgn层,每层代价n,则T(n)=θ(nlglgn)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值