10 + 9 + 8 + … + 1 的时间复杂度是多少?
比如有一个两层的循环,如果是
n = 0 for i in range(10): for j in range(10): n += 1 print(n) // 100
复杂度应该是 n^2 吧,那这样呢:
n = 0 for i in range(10): for j in range(i, 10): n += 1 print(n) // 55
相当于 10 + 9 + 8 + … + 1 = 55,这个复杂度应该怎么描述?
两个循环还好理解,如果是三层循环呢:
n = 0 for i in range(10): for j in range(i, 10): for k in range(j, 10): n += 1 print(n) // 220
主要是三层循环就想不明白了,求教这怎么理解呢?