我不是在这里寻找答案,而是如何找到以下问题的最坏/最佳情况(以 theta 表示法);for 循环通常是 (theta(n)),这将是最好和最坏的情况,但我认为这里发生了其他事情。任何帮助,将不胜感激。
Input: x (an integer), n (an integer)
addOnes(x, n) {
if x > n then
for i <- 1 to n
return x + n
else
for i <- x to n
x <- x + n
return x
编辑答案:
由于 return x + n 常数 (theta(1)) 将是最好的。
最佳 = (theta(1)) 最差 = (theta(n))