항목을 수정하고 나는 결국이 실제 데이터를 벤치마킹에 내려 올 것이라는 점을 이해하지만, 난 그 일을 바쁘다 동안 :컬렉션 내가 특정 구현에 을 올바른 모음을 선택에 대한 기사의 톤을 읽고
C#의 정렬 모음을 사용하면 항목을 수정할 수 있습니까? 은 찾을 수 없습니까?
수정은 아마도 제거로 구현 될 것이므로 다시 삽입하여 명시 적 '수정'기능을 수행합니다 ?
나는 모음 (사용자 정의 또는 표준 라이브러리), 그것을 수행 다음 작업에 필요입니다.
- 삽입 - 자주
- 제거 - 자주
- 수정 - 자주
- 선택 톱 X 요소 - 동시에 위의 상황이 발생 때마다, 그리고 더. 이 O (logn) 삽입을 제공하기 때문에
현재 나는, SortedSet의를 사용하고,하지만 난 제거 성능 및 최선의 방법 항목을 수정하는 방법에 불분명입니다.
항상 컬렉션을 정렬해야합니까? 여러 수정 사항을 적용한 후 나중에 한 번 정렬 할 수 있다면 큰 성능 이점을 얻을 수 있습니다. –
@Evenhuis 유감스럽게도 여러 개의 '클라이언트'가이 목록을 요청할 것이므로이 목록이 변경 될 때마다 정렬 된 순서로 필요합니다. 또는 적어도 상단 요소. – Vort3x
데이터 구조 과정에서 밸런스드 BST를 사용했습니다. 꽤 빠르지 만 C++로 구현했습니다. 어쩌면 그렇게 생각할 수도 있습니다. 다음은 좋은 정보 출처입니다 : http : //www.codeproject.co.kr/Articles/68500/Balanced-Binary-Search-Tree-BST-Search-Delete-Prin –