什麼是爲while循環
x = 1
while(x < SomeValue)
{
x *= 2;
}
的時間複雜度時間複雜度,我相信這是O(N),作爲循環將持續一個固定數量的迭代。 我的假設是否正確?
什麼是爲while循環
x = 1
while(x < SomeValue)
{
x *= 2;
}
的時間複雜度時間複雜度,我相信這是O(N),作爲循環將持續一個固定數量的迭代。 我的假設是否正確?
循環將在O中執行(日誌n)時間。希望數學能讓理性更清楚。每次迭代都是恆定的。爲了尋找與SomeValue
迭代次數,我們稱之爲噸,你可以看到ñ次迭代後,x
將值2 ⁿ。該循環結束一次x
≥t。因此,爲了找到滿足或超過t所需的迭代次數,針對x
插入2≈並且解決t。您得到t = log 2(n)。因此,O(日誌n)時間。
我不介意錯誤,但只是如果我錯了,那麼什麼是正確的答案。 – Cdesai
如果它是一個固定的迭代次數,它有多少? –