【问题标题】:Big O complexities 10n = O(n²)大 O 复杂度 10n = O(n²)
【发布时间】:2021-05-13 06:37:07
【问题描述】:

我正在尝试理解大 O 符号,但它比我想象的要难一些。我有一个函数 10n 我想证明 10n = O(n²)。

谁能告诉我如何证明这一点?

我可以使用的可能值是:

  • c = 0,n0 = 1
  • c = 1, n0 = 1
  • c = 2, n0 = 5
  • c = 1,n0 = 9

【问题讨论】:

  • 我可以使用的可能值是 c = 0, n0 = 1 c = 1, n0 = 1 c = 2, n0 = 5 c = 1, n0 = 9
  • 这能回答你的问题吗? Big-O/Big-Oh Notation Problem

标签: algorithm data-structures big-o


【解决方案1】:

Big O 表示法的想法很简单:

g(n) = O(f(n)) 如果当 n 足够大时,g(n) 的增加率小于或等于 f(n) 的增加率(等于,我的意思是比值小于无穷大)

所以如果 g(n) = O(f(n)) 那么

k 可以是 0 或小于无穷大的正数。

所以你的情况

暗示 10n = O(n^2)

【讨论】:

    【解决方案2】:

    你必须找到 n0c 的值,这样对于每个 nn0 10nc⋅n²

    是真的

    让我们试试你在 cmets 中提出的可能性:

    • c=0, n0=1

      不,那行不通,对于 n=1,我们发现 10n > 0n²

    • c=1, n0=1

      不,那不行,至于 n=1 我们发现 10n > 1n²

    • c=2, n0=5

      是的,这行得通:我们必须证明:

      10n2n²,所以

      10 ≤ 2n,所以

      5 ≤ n.

      由于 n0=5 并且我们必须只检查 nn0 ,我们有一个永远正确的陈述。

    • c=1, n0=9

      不,那行不通,对于 n=9,我们发现 10n > 1n²。注意:如果我们选择 n0=10,它会起作用,但这不在您提供的选项中。

    【讨论】:

      猜你喜欢
      • 2021-04-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-25
      • 2013-10-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多