完成任务并坚持几个问题。
答案 0 :(得分:1)
主方法仅适用于以下类型的重复。
T(n) = aT(n/b) + f(n) where a >= 1 and b > 1
关于问题,
<强> 1。 T(n)= T(2n / 5)+ n
@templatetypedef已修改此递推方程以适合主定理
T(n) = T(n / (5/2)) + n
我想你可以从这里解决它。
<强> 2。 T(n)= T(2n / 3)+ T(n / 3)+ n
显然,这不能通过主定理直接解决。我们应该尝试构造递归树并查看。递归树图表递归调用树和每次调用完成的工作量。 以下是从here
拍摄的图像因此,这会减少到O(n * log n)
第3。 T(n)= T(n-2)+ n
显然,这不能通过主定理直接解决。 有一个为Subtract-and-Conquer类型派生的修改公式。
此link可能有用。
对于表格的重复,
T(n) = aT(n-b) + f(n)
where n > 1, a>0, b>0
如果f(n)为O(n k )且k> = 0,那么
我想你可以从这里解决它。
希望它有所帮助!
答案 1 :(得分:0)
主定理可以应用于表格的任何重现
T(n)= aT(n / b)+ O(n d )
其中a,b和d是常数。 (还有一些其他的配方,但上面的一个处理更常见的情况)。具体来说,这意味着
这些标准排除了第二次重复(子问题不具有相同的大小)和第三次(问题大小必须按常数因子缩小)。但是,第一次复发满足所有这四个标准。将重复重写为
可能会有所帮助T(n)= T(n /(5/2))+ n。
基于此,您掌握了大师定理的案例,以及重现的解决方案是什么?