-2
我有一個緩衝區大小爲2000,要插入的數據是無限的。我想,應該從緩衝區的末尾添加超過2000的數據,即從右向左推動所有數據,並在緩衝區的末尾插入新數據。那麼,我應該嘗試什麼樣的算法或流程?緩衝區管理c
我有一個緩衝區大小爲2000,要插入的數據是無限的。我想,應該從緩衝區的末尾添加超過2000的數據,即從右向左推動所有數據,並在緩衝區的末尾插入新數據。那麼,我應該嘗試什麼樣的算法或流程?緩衝區管理c
您想使用FIFO或'循環緩衝區'。請參閱http://en.wikipedia.org/wiki/Circular_buffer以獲得完整的說明,或者甚至是示例代碼。
根據您的實際需要,實施可能會有所不同。例如,如果您總是需要按順序訪問2000個項目,則可以省略讀取指針(因爲它總是寫入指針之後的一個項目)。
編輯:隊列是類似的東西。如果您使用的是C++,請考慮http://www.cplusplus.com/reference/stl/queue/