不同大小子问题的主定理

时间:2016-06-27 16:04:58

标签: algorithm master-theorem

Master theorem的通用形式提到:

  

假设所有子问题的大小基本相同

在以下情况下应用Akra–Bazzi method

  

子问题的大小差异很大

基本不同的标准是什么?例如,我有一个递归关系,如:

T(n) = T(n/4) + T(3n/4) + cn 
(c is some constant)

我是否仍然可以使用主定理来解决这种关系(例如将其近似为T(n) = 2T(3n/4) + cn)?或者,换句话说,这些子问题大小“基本上是相同的”还是已经“基本上不同”?

1 个答案:

答案 0 :(得分:1)

假设c是常数,您可以:T(n) = T(n/4) + T(3n/4) + O(n)

用Akra-Bazzi方法解决这个问题得到O(n^2)

假设T(n) = 2T(3n/4) + O(n)给出O(n^2.4094)(exp。四舍五入到4 dp)来解决它

因此,只需尝试一下,就可以确认它们已经完全不同了。