【发布时间】:2021-09-26 03:07:45
【问题描述】:
我正在尝试学习时间复杂性。我遇到了一个令我困惑的问题。我需要帮助来理解这一点:
my_func 接受大小为 n 的数组输入。它运行三个 for 循环。在第三个循环中,它调用另一个 O(1) 时间的函数。
def my_func(A):
for (int i=1; i<n; i++)
for (int j=1; j<i; j++)
for (int k=1; k<j; k++)
some_other_func();
我的问题:
- 如果我说 my_func() 执行的步骤总数为 O(n^3),我是对的,因为:
- 第一个 for 循环从 1 变为 n-1
- 第二个 for 循环从 1 变为 n-2
- 第三个循环从 1 到 n-3
- 什么是渐近运行时间,什么是上述算法的渐近运行时间?
- 以下是什么意思:
【问题讨论】:
标签: time-complexity complexity-theory code-complexity