C#에서 값을 기반으로 사전 키 검색
C#에서 사전은 각 고유 키가 단일 값에 해당하는 키-값 쌍입니다. . 그러나 값에서 키를 검색하는 것은 직접 지원되지 않습니다. 이 문서에서는 이 문제를 해결하기 위한 효율적인 솔루션을 제공합니다.
조회 사용
사전의 값은 고유하지 않을 수 있으므로 조회를 수행하여 해당 키. 이는 다음과 같이 Queryable 클래스의 FirstOrDefault 메서드를 사용하여 달성할 수 있습니다.
var myKey = types.FirstOrDefault(x => x.Value == "one").Key;
이 줄은 람다 식을 사용하여 사전을 반복하고 연결된 값이 "1"과 일치하는 첫 번째 키를 반환합니다.
역사전 사용
사전의 값이 다음과 같이 보장되는 경우 고유하고 읽기보다 삽입 빈도가 낮은 경우 값이 키가 되고 그 반대의 경우도 있는 또 다른 사전을 만들 수 있습니다. 이 역 사전은 키 검색 속도를 높일 수 있습니다.
Dictionary<string, string> inverseTypes = new Dictionary<string, string>(); foreach (var item in types) { inverseTypes[item.Value] = item.Key; } string myKey = inverseTypes["one"];
이 접근 방식을 사용하면 값으로 키를 직접 조회할 수 있지만 원본 사전과 역 사전을 모두 유지해야 합니다.
HashTable 또는 SortedLists
해시 테이블과 정렬된 목록은 키 검색에 적합하지 않습니다. 사전으로서의 가치. 일반적으로 특정 값을 기반으로 키를 검색하는 효율적인 방법을 제공하지 않습니다. 사전은 키-값 쌍을 효율적으로 처리하도록 특별히 설계되었습니다.
위 내용은 C#의 값을 기반으로 사전 키를 효율적으로 검색하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!