【问题标题】:time complexity for given scenario of code [closed]给定代码场景的时间复杂度[关闭]
【发布时间】:2019-09-16 01:06:21
【问题描述】:

以下情况的时间复杂度是多少:

我)

for(i=0; i<n; i++)
{
    for(j=0; j<n; j++)
    {
        printf("hello");
    }
}

ii)

for(i=0; i<n*n; i++)
{
    printf("Hello");
}

【问题讨论】:

  • 你自己尝试过什么来解决这个问题?

标签: c time complexity-theory


【解决方案1】:

i):外循环运行 n 次,因此您在外循环中触摸每个元素 n 次。

内部循环也在运行n 次,所以你触摸每个元素n*n 次所以它 O(n^2)

ii) 循环运行n*n 次,所以它只是 O(n^2)

【讨论】:

    【解决方案2】:

    您需要问自己 1 次迭代的成本是多少,让我们假设 x 然后问自己我有多少迭代,让我们假设 y 那么时间复杂度是多少呢? O(x*y)

    在您的两种情况下: 1 次迭代花费 O(1) 你有 n*n 次迭代 所以时间复杂度O(n^2)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-02-09
      • 1970-01-01
      • 1970-01-01
      • 2021-12-07
      • 1970-01-01
      • 2022-01-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多