n^3 嵌套 For 循环的大 O 表示法

发布于 2024-10-28 19:45:09 字数 186 浏览 5 评论 0原文

考虑以下代码:

for ( int j = 0; j < 2n; j++)
{
    for ( int k = 0; k < n^3; k += 3)
        sum++;
}

复杂度是O(n^2)吗? for 循环中的 n^3 是否影响 LARGE N 的表示法?

Considering the following code:

for ( int j = 0; j < 2n; j++)
{
    for ( int k = 0; k < n^3; k += 3)
        sum++;
}

Is the complexity O(n^2)? Does the n^3 in the for loop affect the Notation for LARGE N?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

寂寞清仓 2024-11-04 19:45:09

O(N^4)

sum++ 被调用 2*n*(n^3)/3 次。

O(N^4)

sum++ is called 2*n*(n^3)/3 times.

愛放△進行李 2024-11-04 19:45:09

如果只考虑内层循环,它会执行 N^3 次,

外层循环会使内层循环执行 N 次,所以总复杂度 = N * N^3 = N^4

if you only consider the inner loop, it gets executed N^3 times

the outer loop makes the inner one execute N times, so total complexity = N * N^3 = N^4

甜宝宝 2024-11-04 19:45:09

外循环有 O(2n) 次操作。
内循环有 O(n^3) 次操作。
总而言之,该程序的复杂度为 O(n)*O(n^3) = O(N^4)。

The outer loop has O(2n) operations.
The inner loop has O(n^3) operations.
Together, the program has O(n)*O(n^3) = O(N^4).

嗼ふ静 2024-11-04 19:45:09

确切的迭代次数和增长复杂度的顺序可以正式推断:

在此处输入图像描述

The exact number of iterations and the order of growth complexity can be inferred formally:

enter image description here

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文