FIFO를 허용 할 수있는 컬렉션 개체/전략을 찾고 있으며 단순히 위치를 지정하여 컬렉션의 항목을 볼 수 있습니다. 명확히하기 위해 :FIFO를위한 최상의 컬렉션 개체 및 위치별로 항목을 볼 수있는 능력
나는 100 DTO 객체 말을 유지하기 위해 데이터 구조를 좋아하는 것, 그것이 (101)에 도달 할 때 다음, 나는 첫 번째 항목 등 (FIFO)을 삭제하여 공간을 만들 수 있습니다.
요청시 이러한 객체의 최신 x #을 반환하고 싶습니다.
닷넷 큐 객체를 사용해 보았지만, # 2를 지원하지 않는다고 말할 수는 있지만 뭔가를 간과 할 수도 있습니다.
인덱싱이 O (N) 작업이므로 List를 래핑하지 않습니다. OP가 대기열에 자주 색인하기를 원하는 것처럼 들리므로 큰 걱정거리입니다. 배열은 O (1) 임의 액세스 시간을 제공합니다. – arke
List 클래스와 마찬가지로 .NET에서 List은 배열을 내부적으로 사용하지만 항목 # 0을 제거하는 것은 O (N) 연산이므로 오버 헤드가 동일하므로 그냥 같은 위치에 있지 않습니다. –
아, 맞아, 나는 LinkedList를 생각하고 있었다. 이 경우 래퍼 컬렉션 클래스에서 읽기 및 쓰기 색인을 사용하면 OP가 염려하는 모든 작업에 대해 O (1)이됩니다. – arke