2015-02-10 79 views
0

關於派生表達式以找到使用求和的運行時間的幾個問題。 Big-Oh的時間複雜性已經給出了,所以使用求和來找出複雜性是我關注的重點。時間複雜度大哦使用求和

First Example

所以我知道後先有2個指令,必須在循環的第一次迭代之前運行,而2個指令必須要運行,(比較,我的增量)迭代。當然,for循環中只有一條指令。所以推導我有2n + 3,除去3和2,我知道時間複雜度是O(n)。

在這裏,我知道如何開始寫總和,但for循環的增量仍然有點讓我困惑。 以下是我有:

Summation 1

所以我知道我的總和,時間複雜度的推導是錯誤的。 任何想法,我要去哪裏錯了? 謝謝

回答

1

底部只需使用n/2頂部和i = 1

enter image description here

i = 1,而不是i = 0的原因是因爲for循環的條件是i < n,所以你需要考慮的是因爲在總和中有一個關閉,所以i將一直增加到n/2而不是1個短。

+0

好的,謝謝,真的有幫助!所以只是重申,讓我們說循環條件是我<= N,我會離開我= 0? – KimCheeFatChoyProgrammer 2015-02-10 04:49:09

+0

@Amateur_Haskell是的,沒錯。附:請確保接受答案,如果這回答了你的問題:) – Kacy 2015-02-10 04:57:09