程序的时间复杂度和空间复杂度(python)



我编写了一个python程序来计算平均单词长度并返回平均单词长度

def stringlength(A: List[str]) -> int:
average = sum(len(word) for word in A)/len(A)
return average 

test_list =[‘gfg’,‘是’,‘最好的’,‘为’,‘极客’]

打印(stringlength (test_list)

答:3.4

我对计算时间和空间复杂性是新手。我假设这个python程序的时间复杂度是O(N),其中N是列表的长度,因为它使用了像len和for循环这样的内置函数空间复杂度为0 (N),因为for循环中的len()将返回一个长度列表。谁能澄清一下我的假设是否正确?

你是对的。时间复杂度为O(n),其中n是列表的长度。

这是因为你要遍历列表中的每个元素。

最新更新