Python嵌套循环的时间复杂度

时间:2019-10-13 20:11:38

标签: python string time-complexity nested-loops

我有以下代码检查字符串s是否包含特定单词的前两个字母(以小写和任意顺序):

def check_letters(input_string):

    word = 'Hello' # 1
    array_size = len(input_string) # 1

    for i in range (0, array_size): # n
        if input_string[i].lower()==word[0].lower(): # n
            for j in range (0, array_size): # n^2
                if input_string[j].lower()==word[1].lower(): # n^2
                    return True # 1

    return False # 1

我已经注释掉了每行的复杂度,并且由于嵌套的for循环的复杂度为O(N ^ 2),因此我的函数的最坏情况似乎是O(N ^ 2)。每行的复杂度是否正确?最坏情况下的复杂度是否为O(N ^ 2)?另外,输入大小是否只是字符串的长度?

0 个答案:

没有答案