was ist die zugrunde liegende Datenstruktur der STL-Liste, Vektor und einstellen?

was ist die zugrunde liegende Datenstruktur der STL-Liste, Vektor und einstellen ?

Meine Lösung:

  • Vektor : (dynamisch zugewiesene) array
  • Liste: ?
  • set: heap (oder einen binären Baum mit allen Blatt-Knoten befindet sich Links wie möglich und halten Sie min/max-element auf der Oberseite)

Recht?

  • Umsetzung definiert, aber im Allgemeinen std::vector ist eines dynamisch reservierten Arrays. std::list ist eine doppelt verkettete Liste (C++11 führt std::forward_list ist eine einfach verkettete Liste), und eine set basieren in der Regel auf rot-schwarz-Bäume, wenn nichts passt, dass die amortisierten Komplexität und Verhalten-Anforderungen an die Schnittstellen in der Norm definiert sind akzeptabel Implementierungen.
InformationsquelleAutor user1002288 | 2011-10-26
Schreibe einen Kommentar