我需要在C#中的類來存儲不超過最後N項目有以下方法更可自動刪除最早的項目:列表當我添加一個新的
Add(T item) {
if (mylist.Count >= N)
remove the first(oldest) item;
add a new item to the tail;
}
與財產獲取項目在指定的索引處。
所以可能正確的方法是基於我的類上的一個類:List,Queue,ConcurrentQueue,Dequeue(可能是不同的東西?)。當然,一個班級應該爲頭部和尾部提供平等的訪問時間。
問題是,什麼樣的課程最適合我的目的?
_equal訪問時間的頭和tail._聽起來就像從常規列表 –
TaW
2015-03-02 17:04:18
是否'名單'它的頭和尾巴提供平等的接入時間的子類? –
Vikora
2015-03-02 20:58:14
那它取決於你想存儲的元素的數量。 [Here](http://geekswithblogs.net/BlackRabbitCoder/archive/2011/06/16/c.net-fundamentals-choosing-the-right-collection-class.aspx)是一個比較。對於__smaller n__或做大量__lookups__名單會很好。對於大n其他人可能會更好.. –
TaW
2015-03-02 21:23:37