【发布时间】:2023-02-09 00:08:55
【问题描述】:
到目前为止,我所了解的以 n 作为输入的 for 循环的时间复杂度是 O(n),但是循环内的代码呢?
while var in arr:
arr.remove(var)
arr 是一个包含 n 个元素的列表,var 可以是字符串或数字。
我怎么知道我应该增加还是增加时间复杂度?上面代码的时间复杂度是O(n**2)还是O(n)?
for i in range(n):
arr.remove(var)
arr.remove(var1)
现在的时间复杂度是多少?我应该加或乘什么?
我尝试学习时间复杂度,但无法理解如何处理具有不止一次复杂度的代码。
【问题讨论】:
-
第二个代码将崩溃(除非 n=0)。这真的是您想询问的代码吗?
-
@KellyBundy 这只是两个操作的示例 sn-p。没有这样的代码
-
使用一个明智的例子仍然会更好。
标签: python loops time-complexity