Poruszanie się po skomplikowanej kolekcji

0

Witam, mam w C# kolekcję typu:

Dictionary<Dictionary<string, string>, int>

Jak odczytać z tego słownik na konkretnym incie ?

0

A nie chciałeś czasem zrobić odwrotnie tego słowanika, tzn mapować inta na słownik? Bo jaki sens mieć Dictionary jako klucz? o_O

0

potrzebujesz słownik w drugą stronę
chyba że to rzadko wykonywana operacja, wtedy możesz zrobić:

var slownik = kolekcja.First(x => x.Value == 5);

będzie to w cholerę wolniejsze od odwoływania się po kluczu
możesz zrobić sobie słownik dwukierunkowy jeśli chcesz - oczywiście będzie zajmował więcej pamięci i dodawanie, usuwanie elementów będzie wtedy wolniejsze

0

Mutowalne klucze w mapach doprowadzają to tego, że czasami nie da się odwołać do elementu, jeżeli klucz został zmieniony po zhaszowaniu czy po wstawieniu do drzewa poszukiwań binarnych. W pierwszym przypadku hasz nie będzie się zgadzał i element nie zostanie znaleziony bo będzie szukany w złej liście, w drugim element będzie w złym miejscu i też nie zostanie znaleziony.

0

Mój błąd, kluczem ma być oczywiście int.

1 użytkowników online, w tym zalogowanych: 0, gości: 1