Словарь C #: более быстрый доступ, но меньший объем памяти

Я хочу посоветовать лучший способ хранения и доступа с минимальным объемом памяти и максимальной производительностью доступа.

Например. для каждой марки автомобиля я хочу сохранить модель и название.

У меня есть некоторые мысли ниже:

Вариант 1:

Dictionary<string, Dictionary<string, string>> values = new Dictionary<string, Dictionary<string, string>>();
Dictionary<string, string> list = new Dictionary<string, string>();
list.Add("2001", "Jetta S");
list.Add("2002", "Jetta SE");
list.Add("2002", "Jetta LE");
values.Add("VolksWagen", list);

Вариант 2:

Dictionary<string, List<KeyValuePair<string, string>>> values2 = new Dictionary<string, List<KeyValuePair<string, string>>>();
<pre lang="xml">List<KeyValuePair<string, string>> list2 = new List<KeyValuePair<string, string>>();
list2.Add(new KeyValuePair<string, string>("2001", "Jetta S"));
list2.Add(new KeyValuePair<string, string>("2002", "Jetta SE"));
list2.Add(new KeyValuePair<string, string>("2002", "Jetta LE"));
values2.Add("VolksWagen", list2);

Вариант 3:

Dictionary<string, List<string>> values1 = new Dictionary<string, List<string>>();
List<string> list1 = new List<string>();
list1.Add("2001:Jetta S");
list1.Add("2002:Jetta SE");
list1.Add("2002:Jetta LE");
values1.Add("VolksWagen", list1);
  • Вариант 1: более быстрый доступ к марке и имя, но большая часть объема памяти
  • Вариант 2: быстрый доступ к make и имя, но больше памяти
  • Вариант 3: медленный доступ к make и имя (пришлось бы его разобрать), но меньше занимаемой памяти

было бы более 1500 словарей, как указано выше.

Любые предложения по быстрому доступу, но меньшему объему памяти приветствуются?

Спасибо.

11
задан Santosh 16 February 2011 в 08:15
поделиться