【问题标题】:What is the time complexity of a function that makes recursive calls (logarithmic) within a loop?在循环中进行递归调用(对数)的函数的时间复杂度是多少?
【发布时间】:2018-08-23 13:54:02
【问题描述】:

类似的东西-

func(n) {
    if (n == 1)
        return;
    else
        for (int i = 0; i < 100; ++i)
            func(n/2);
}

如果你能提供一个循环关系,那也太棒了。

编辑 - 如果我使用 master 方法,我认为它会像这样 -

a = 100,b = 2,f (n) = 1。

f (n) = O (nlog2100 - E) 对于某个大于 0 的常数 E,则 T (n) = O (nlog2低于>100)。

【问题讨论】:

  • 你看过Master theorem吗?
  • 如果能展示你迄今为止的努力,那将是更加了不起。
  • 我有。我不确定它是否遵循这种形式,但看起来确实如此。感谢您向我指出这一点。
  • 这不是作业问题,但我现在正在使用主方法进行编辑。
  • T(n) 的结果看起来正确 (Case 1)。不确定f(n) = O (n^[log2(100) - E]) 是什么意思,但这不重要。

标签: recursion time-complexity recurrence


【解决方案1】:

因此,在 cmets 的帮助下,应用主方法后,答案就在我原来的问题的编辑中。

【讨论】:

    猜你喜欢
    • 2020-03-13
    • 2017-11-09
    • 2015-11-29
    • 2022-11-22
    • 1970-01-01
    • 2022-01-26
    • 2021-11-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多