【发布时间】:2018-04-08 12:24:55
【问题描述】:
我有以下 for 循环:
for i = 1 to n
for j = i to n
for k = i to j+1
我认为第一个和第二个循环的复杂度分别为 n 和 n(n+1)/2,但我真的很难理解如何计算第三个循环的复杂度。当初始值和最终值都依赖于先前的循环时,我该如何找到它的复杂性?
【问题讨论】:
-
您可以先尝试
n的不同值,然后计算第三个for的执行次数。查看这些值应该可以告诉您一些信息。一旦你对归纳证明的一般形式有了一个想法。
标签: loops time-complexity big-o complexity-theory discrete-mathematics