gpt4 book ai didi

algorithm - 这种重复可以有多少个子问题,同时仍然比初始重复更快?

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:01:45 26 4
gpt4 key购买 nike

我在处理渐近分析问题时遇到了一些麻烦:我的问题是计算最大值,如果我的问题中所述为“a”:

An Algorith A has running time T(n)= 7T(n/2) + n^2
and Algorith B has running time T' = aT'(n/4) + n^2.
What will be the maximum integer value of 'a' such that algorith B runs
asymptotically faster than A.

我应该如何找到“a”的值,我应该只使用算法概念吗?或者他们是否有任何其他方式来找出或任何解决方案。

最佳答案

这是使用主定理的好地方。

在第一次递归中,T(n) = 7T(n/2) + n2,主定理说

  • a = 7
  • b = 2
  • d = 2

由于 logb a = log2 7 大于 d = 2,递归求解为 T(n) = Θ(nlog27).

现在,让我们看看 T'(n)。在这里,我们有一个未知数,b = 4,d = 2。如果满足以下条件:

  • log4a > 2, 和
  • log4a < log2 7

然后大定理说 T'(n) = Θ(nlog4a) = o(nlog27),我们就完成了。所以我们需要求解一个。

这样做可以

log4a < log2 7

log2a / log2 4 < log2 7 (using the change of base formula for logs)

log2 a / 2 < log2 7

log2 a < 2 log 2 7

log2 a < log2 72 (using the power rule for logs)

log2 a < log2 49

a < 49

因此,您可以选择的最大积分 a 是 48。

希望这对您有所帮助!

关于algorithm - 这种重复可以有多少个子问题,同时仍然比初始重复更快?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18848414/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com