「最近使用した」コレクションに最適なソリューションは何か決定しようとしています。直観的には、LIFOでもFIFOでもありません。アイテムを "削除"するまではFIFOです。しかし、それはLIFOである "検索"まで。したがって、キューとスタックの両方にはいくつかの制限があります。"最近使用した"コレクションのコレクション
または、私はこのすべてを徹底的に考えており、配列やリストに固執する必要がありますか?
「最近使用した」コレクションに最適なソリューションは何か決定しようとしています。直観的には、LIFOでもFIFOでもありません。アイテムを "削除"するまではFIFOです。しかし、それはLIFOである "検索"まで。したがって、キューとスタックの両方にはいくつかの制限があります。"最近使用した"コレクションのコレクション
または、私はこのすべてを徹底的に考えており、配列やリストに固執する必要がありますか?
私はLinkedListコレクションを提案します。 LinkedListは、リスト内の最初と最後のノードへの参照を保持します(LRU/MRU順に移動することができます)。 AddFirst
とRemove
メソッドもありますので、値を削除して、リストから値を使用すると値を移動できます。 MSDN
ありがとう!それについて考えていない:) – Felix
[Here](https://www.informit.com/guides/content.aspx?g=dotnet&seqNum=625)実装 – thepirat000
'Stack 'は長さが長すぎないので、UIにとっては非常に便利です。常に 'stack = new Stack(stack.Skip(1));'を前面からポップすることができます。 –
Enigmativity