Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Algorithm 连续执行的时间复杂性_Algorithm_Time Complexity - Fatal编程技术网

Algorithm 连续执行的时间复杂性

Algorithm 连续执行的时间复杂性,algorithm,time-complexity,Algorithm,Time Complexity,我有3种算法(A1、A2和A3),它们的估计时间复杂度分别是O(n logn)、O(kn)和O(qn),其中K和Q是动作的不同参数。然后我有第四个算法连续运行这三个算法(每个算法都需要前一个算法的结果) 我不知道该如何估计这套算法的总复杂度。据我所知,O(n logn)的增长速度比O(kn)和O(qn)快,因此时间消耗中最重要的部分将是A1,这可能是足够大的n最相关的行为。但这并不能反映出即使在A1完成之后,A2和A3仍然需要很多时间 所以我想知道,我该怎么解释呢?仅仅说复杂性是O(n logn

我有3种算法(A1、A2和A3),它们的估计时间复杂度分别是
O(n logn)
O(kn)
O(qn)
,其中K和Q是动作的不同参数。然后我有第四个算法连续运行这三个算法(每个算法都需要前一个算法的结果)

我不知道该如何估计这套算法的总复杂度。据我所知,
O(n logn)
的增长速度比
O(kn)
O(qn)
快,因此时间消耗中最重要的部分将是A1,这可能是足够大的
n
最相关的行为。但这并不能反映出即使在A1完成之后,A2和A3仍然需要很多时间


所以我想知道,我该怎么解释呢?仅仅说复杂性是
O(n logn)
就够了吗

总时间复杂度为:

O(n对数n)+O(kn)+O(qn)

如果假设
K
Q
是增长速度慢于或类似于
logn
的参数,则总时间复杂度为:

O(n日志n)

因为我们使用的是大o符号。否则,总时间复杂度为初始和(或其一部分)


这样做的目的是当
n
增长时,保持将支配另一个术语的术语。

参见