小编dan*_*bee的帖子

通过数组的所有可能序列进行迭代的时间复杂度是多少?

遍历数组内所有可能的索引序列的算法。

一个循环的时间复杂度是线性的,两个嵌套循环的时间复杂度是二次O(n ^ 2)。但是,如果嵌套另一个循环并遍历这两个索引之间分隔的所有索引怎么办?时间复杂度是否上升到三次O(n ^ 3)?当N变得非常大时,似乎没有足够的迭代来考虑三次方的复杂性,但似乎是二次O(n ^ 2)

这是考虑N =数组长度的算法

for(int i=0; i < N; i++)
{
    for(int j=i; j < N; j++)
    {
        for(int start=i; start <= j; start++)
        {
          //statement
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

这是N = 7(直到i = 7时)的迭代的简单视图:

在此处输入图片说明 在此处输入图片说明

等等..

我们应该将时间复杂度视为二次,三次还是不同的大小复杂度?

java algorithm time-complexity

5
推荐指数
2
解决办法
122
查看次数

标签 统计

algorithm ×1

java ×1

time-complexity ×1