首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何计算复杂度?

如何计算复杂度?
EN

Stack Overflow用户
提问于 2011-02-11 19:53:12
回答 2查看 1.7K关注 0票数 0

我是算法的初学者,我不知道如何计算复杂度。

代码语言:javascript
复制
Example:
int x=10,y;
y = x;

上面例子中的复杂度是多少?

谢谢

EN

回答 2

Stack Overflow用户

发布于 2011-02-11 19:57:53

如果参考O表示法,这应该是O(1)。

票数 2
EN

Stack Overflow用户

发布于 2011-02-11 20:01:27

Big O Notation中,这对应于O(1),这基本上意味着操作的运行时是常量,或者至少小于某个常量。因此,运行时并不依赖于您拥有的输入。你可以从我写的东西中推断出,大O符号只给出了运算的上界。还有其他的符号给出了一个下界等等。

例如,它确实依赖于输入的情况可能是:

代码语言:javascript
复制
int res = 0;
int[] arr = getSomeArray();
foreach (int i in arr)
    res = res + i;

这里的运行时间取决于数组的大小,如果我们将数组的长度设置为变量n,那么这个变量就是O(n)。同样,大O符号并没有指定执行所需的确切时间,但在本例中,只是说我们可以将n乘以某个常量,然后在n*some s内完成。

这里给出了更详细的解释:What is a plain English explanation of "Big O" notation?

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4968683

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档