C# Dictionary: schneller Zugriff, aber weniger Speicherbedarf

Möchte ich einige beraten auf die beste Art und Weise zu speichern und Zugriff mit minimalen Speicherbedarf und maximale Zugriffszeit.

ZB.
für jedes Fahrzeug machen ich will speichern von Modell und Namen.

habe ich mir einige Gedanken unten:

Option 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);

Option 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);

Option 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);
  • Option 1: schneller Zugriff machen und
    Namen, aber die meisten Speicher-footprint
  • Option 2: schnellen Zugriff machen und
    Namen, aber mehr Speicherbedarf
  • Option 3: langsame access machen und
    name (Parsen), aber
    weniger Speicherbedarf

es wäre mehr als 1500 Wörterbücher wie oben.

Anregungen für schnellsten Zugriff, aber weniger Speicherbedarf schätzen?

Dank.

"mit minimalen Speicherbedarf und maximale Zugriffszeit." - Sie sind in der Regel gegenüber Einschränkungen (Zeit versus Raum)
Nicht option 1 nur eine Ausnahme werfen, auf doppelte Schlüssel?
Wie oft werden diese Listen aktualisiert?
Persönlich mag ich den einfachen und lesbaren code, es sei denn, der code ist zu langsam, als dass ich dazu gezwungen werde, zu Gesicht, das performance-Problem. Ich glaube, jeder hat gesehen List<KeyValuePair<K,V>> würde mich ein wenig seltsam.
vorschlagen zum erstellen einer Struktur zur Kapselung von Jahres-und make - Leistung wird die gleiche wie die der KeyValuePair aber code wäre viel besser lesbar.

InformationsquelleAutor Santosh | 2011-02-16

Schreibe einen Kommentar