【问题标题】:Time complexity of a Divide and Conquer分治法的时间复杂度
【发布时间】:2016-02-06 10:22:54
【问题描述】:

我有找到复杂性的主定理,但是 问题是 主定理说

表格重复

T(n) = aT(n/b) + f(n) where a >= 1 and b > 1

有以下三种情况: /******************logba 表示以 b 为基数的 a 的日志 ******************/

  1. If f(n) = Θ(n^c) where c < Logba then T(n) = Θ(nLogba)

  2. If f(n) = Θ(n^c) where c = Logba then T(n) = Θ(ncLog n)

  3. If f(n) = Θ(n^c) where c > Logba then T(n) = Θ(f(n))

现在解决我的问题

T(n) = T(n/2) + n^2

我的解决方案 c = 2logba = log21base = infinity 那么在哪种情况下它会下降,复杂性是多少

【问题讨论】:

  • 这听起来像是一个理论上的 CS 问题 - 有一个单独的 stackexchange.com 网站。

标签: algorithm time-complexity master-theorem


【解决方案1】:

在你的情况下 b=2a=1 所以 Log_b(a)log of 1 in base 2 而不是 log of 2 in base 1

见:

T(n) = aT(n/b) + f(n)
T(n) =  T(n/2) + n^2

作为Log_b(a) = Log_2(1) = 0,你会遇到3

【讨论】:

  • 不是 ------ 2 base 1的日志
  • @iankit3 我引用你的话:logba means log of a with b as base,所以如果b=2 基数是2 而不是1
  • 对不起,这是一个错误!感谢您做出正确的选择 - fjardon
猜你喜欢
  • 1970-01-01
  • 2021-11-30
  • 2018-08-24
  • 2016-11-17
  • 2015-04-24
  • 2015-07-07
  • 2019-10-05
  • 2021-06-22
相关资源
最近更新 更多