Какова большая сложность этого кода Python? - PullRequest
0 голосов
/ 23 октября 2018

Python:

for word in sentence:
    curr = word.split('')
    for letter in curr:
        # do something (constant operation)

Каким будет это обозначение Big O?

Я думал, что это O (n), где n - количество символов в предложении., поскольку часть do what действительно зависит от количества символов.

Однако, это также может быть O (n * m), где n - количество слов в предложении, а m - размер слова.когда делали раскол.

Я почесал голову на этом и натолкнулся на разные точки зрения, поэтому я решил открыть его, чтобы переполнить стек для помощи.

Я тожеполагая, что поскольку большие О беспокоятся только о действительно больших числах, стоимость вызова .split будет минимальной и, следовательно, не будет включена.

...