这个等式 O(n) 的时间复杂度如何?

How is this equation O(n) time complexity?

def myFunction(mylist):
    n = len(mylist)  
    p = []
    sum = 0
    for x in mylist:
        if n > 100:
            sum = sum + x
        else:
            for y in mylist:
                p.append(y) 

我的思路是,如果要执行else语句,里面的操作是O(n)的,因为遍历的次数取决于列表的长度。同样,我也将第一个循环理解为 O(n),从而使整个最坏情况复杂度为 O(n^2)。

显然正确答案是 O(n)。任何解释将不胜感激:)

补充一点,我们通常认为 Big-O 复杂性是在 n 变大的情况下。因此,随着 n 变大,我们不会执行第二条语句。因此它只是 O(n)