java - 我需要一些关于 Big O 的说明

标签 java

<分区>

我有几个问题,请多多包涵。我需要一些帮助来阐明 Big O 和运行时。据我了解,Big O 是一种正确呈现算法运行时间的方式?通过阅读,我一直在试图弄清楚如何计算算法的大 O。到目前为止,我已经发现像这样的东西有 O(N^2) 的大 O

for(i = 0; i < N, i++)
    for(j = 0; j < N; j++)
      //code

但是如果是这样的话会发生什么:

for(i = 0; i < N, i++)
    for(j = 0; j < M; j++)
      //code

N 并不总是等于 M。

还有,如果将其中两个加在一起,Big O 是什么?

for(i = 0; i < N, i++)
    for(j = 0; j < N; j++)
      //code
for(i = 0; i < N, i++)
    for(j = 0; j < N; j++)
      //code

大O等于N^2 + N^2 = 2N^2吗?

最佳答案

Where N isnt always equal to M.

那么就是O(NM),除非M依赖于N,反之亦然。如果它们是独立的,那么也可以说是O(N)O(M)

Is the big O equal to N^2 + N^2 = 2N^2?

O(2N^2) 等同于O(N^2)

关于java - 我需要一些关于 Big O 的说明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10789681/

相关文章:

java - Redis/绝地 : Cluster versus Pool

java - 如何在向后兼容 android 的同时使用新类?

java - 如何使用 Liferay 7 在 JSP 中获取 URL 参数并将其放入隐藏输入

javascript - 如何在 Eclipse 中将 Prototype JavaScript Framework 添加到 jee/jsp/servlet 项目中?

java - 使用 mule-domain-maven-plugin 发布时双重上传

java - 实例级别的 Jersey @PathParam 与方法级别的 @PathParam

java - 如何正确地对属性更改进行单元测试?

Java 对象 makenew 对象覆盖当前对象

java - Android - 需要 Activity 但不想要 Activity ?

java - AspectJ inside(is(FinalType)) 丢失