STL
Wahl des geeigneten Containers
- Soll die Menge indiziert werden? Kann die Menge als Folge von
Index/Wert-Paaren gedacht werden?
wenn Index vom Typ Integer, kann vector oder deque verwendet
werden; wenn Index anderen, sortierbaren Typ (z.B. Strings) haben, dann
map verwenden
- Wie können Werte verglichen werden?
Für die Speicherung in einem STL-Container muß in der Regel der
Gleichheitsoperator für den Typ der Werte sinnvoll definiert sein;
für die Speicherung in einer set muß zudem noch der
Kleiner-als-Operator für die Werte, für die Speicherung in einer map
muß dieser für den Typ der Schlüssel (Indextyp) definiert werden
- Muß häufig der größte Wert des Containers gefunden oder entfernt
werden?
priority_queue verwenden
- an welcher Position sollen die Elemente dem Container hinzugefügt werden?
beliebige Position: list verwenden; Anfügen am Anfang: deque
verwenden; Einfügen am Ende: queue verwenden
- Sollen häufig zwei Container zu einem zusammengeführt werden?
set oder list verwenden, je nachdem, ob Ordnung der Elemente
aufrechterhalten werden soll