1
假設我們有一個擴展數組,當我們嘗試向其中添加某些內容但它已被填充時,它的大小加倍。將1個元素添加到擴展數組中的最壞情況時間
根據幻燈片底部"Amortization: Expanding Vectors"加入一個元素的最壞情況時間是2N,而不是N?爲什麼是這樣?
我認爲這將是N,因爲將N個元素複製到新的雙倍大小的陣列需要N次。
例如,說我加入一個元素大小4的滿陣這將是這樣的:
- 讓大小8(雙4)的新陣列。
- 將原始數組的所有元素複製到新數組(複製4次)。
- 將新數組的第五個元素設置爲附加元素(複製1次)。
因此,將複製元素5次,這是N + 1,而不是2N?
Yay,Comic Sans ... – poke
PDF似乎很好地解釋了它是如何派生的,你能告訴我們你不瞭解什麼,所以答案可以更好地解決這個問題嗎? – hexafraction
另外請記住,爲了漸進分析的目的,'O(2N)= O(N)' –