ZFX
ZFX Neu
Home
Community
Neueste Posts
Chat
FAQ
IOTW
Tutorials
Bücher
zfxCON
ZFXCE
Mathlib
ASSIMP
NES
Wir über uns
Impressum
Regeln
Suchen
Mitgliederliste
Membername:
Passwort:
Besucher:
4421995
Jetzt (Chat):
15 (0)
Mitglieder:
5239
Themen:
24223
Nachrichten:
234554
Neuestes Mitglied:
-insane-

FAQ - Frequently Asked Questions - Allgemeine Programmierung


Standard Container Zugriff Zeiten

Zitat:
wie liest man nochmal aus einer List, oder Vector aus ?


Stichworte: Iteratoren, operator[], at().

Zitat:
Welches ist am besten, wenn es schnell gehen muss, ein element aus eine list,vector zu finden und zu löschen/verschieben ?


Stroustrup, Abschnitt 17.1.2.

operator[]
vector: O(1)
list: nicht verfuegbar
deque: O(1)

Listen-Operationen
vector: O(n) amortisiert
list: O(1)
deque: O(n)

Front-Operationen
vector: nicht verfuegbar
list: O(1)
deque: O(1)

Back-Operationen
vector: O(n) amortisiert
list: O(1)
deque: O(1)

Iteratoren:
vector: wahlfreier Zugriff
list: bidirektionaler Zugriff
deque: wahlfreier Zugriff

map, multimap, set und multiset sind konzeptionell als balanced trees ausgefuehrt, d.h. die mit ihnen moeglichen Operationen werden wie erwartet amortisiert in O(log(n)) ausgefuehrt.

Zitat:
Was macht deque ? Wozu ist set gut ?


Deque ist eine "double ended queue", d.h. man kann sowohl vorne als auch hinten schnell anhaengen. Denk Dir eine Deque als Kreuzung aus List und Vector (ausgefuehrt als Liste von Vectors... wow).

Zitat:
Und was macht multiset, multimap?


Im Gegensatz zu set und map erlauben sie das Vorhandensein mehrerer identischer Schluessel.

von scalar