인덱스로 액세스되는 my sortedDictionary의 요소 값을 설정해야합니다.SortedDictionary의 i 번째 값 설정
e.e.
sortedDictionary.Values[index] = value; // compile error
다음은 색인이 아닌 키를 통해 액세스하기 때문에 다음과 같습니다.
sortedDictionary[index] = value; // incorrect
나는 다음과 같은 해결책을 생각해 냈지만 직관력은 느리다는 것을 알게되었습니다. 나는 열쇠에 의한 접근이 O (log N)이고, 색인에 의한 접근이 O (1)라고 가정하고 있지만 확실하지는 않습니다.
sortedDictionary[sortedDictionary.ElementAt(index).Key] = value;
일부 배경 : 나는 빠른 삽입을 필요로하기 때문에 내가 SortedDictionary를 사용하고
은 삭제 조회 및 이웃 요소에 액세스 할 수 있도록. (즉, 다음 또는 가장 낮은 다음). 효율성이 중요합니다.
ElementAt (인덱스)는 열거 형의 확장 메서드입니다. SortedDictionary는 IList 인터페이스를 구현하지 않으므로 O (n) 시간에 작동합니다. – maciejkow
기본 제공 .NET 구조 중 아무 것도 필요로하지 않는 것처럼 보입니다. 나는 건너 뛰기 목록으로 갈지도 모른다. – abtree