Grundlegende Datenstrukturen Flashcards
Nenne beide Varianten zur Realisierung von linearen Listen
- Sequenziell
- Verkettet
Nenne Vorteile der Sequenziellen Realisierung von linearen Listen
schneller Zugriff
Nenne Nachteile der Sequenziellen Realisierung von linearen Listen
langsames Einfügen
Wie implementiert man eine Queue sequenziell?
Nenne Vorteile der verketteten Realisierung von linearen Listen
schnelles Einfügen
Nenne Nachteile der verketteten Realisierung von linearen Listen
langsamer Zugriff, höherer
Speicherbedarf
Lineare Listen: Sequenzielle Speicherung
Komplexität Zugriff
O(1)
direkt über Index p: L.element[p]
Lineare Listen: Sequenzielle Speicherung
Komplexität Suchen
O(N)
durchlaufe die Liste bis x gefunden wurde
Lineare Listen: Sequenzielle Speicherung
Komplexität Einfügen
O(N)
verschiebe Elemente p+1,…,n um eine Position nach hinten
Lineare Listen: Sequenzielle Speicherung
Komplexität Entfernen
O(N)
verschiebe Elemente p+1,…,n um eine Position nach vorne
Lineare Listen: Sequenzielle Speicherung
Komplexität Verketten
O(N)
füge die Elemente von Liste 2 hinter Liste 1 ein
Lineare Listen: (Doppelt-)verkettete Speicherung
Komplexität Zugriff
O(N) [O(1)]
durchlaufe die Liste bis Position p
[ ] : falls pos-Zeiger bereits an Position p
Lineare Listen: (Doppelt-)verkettete Speicherung
Komplexität Suchen
O(N)
durchlaufe die Liste bis x gefunden wurde
Lineare Listen: (Doppelt-)verkettete Speicherung
Komplexität Einfügen
O(N) [O(1)]
erzeuge neues Element, ‚verbiege‘ Zeiger
[ ] : falls pos-Zeiger bereits an Position p
Lineare Listen: (Doppelt-)verkettete Speicherung
Komplexität Entfernen
O(N) [O(1)]
verbiege‘ Zeiger, lösche das Element
[ ] : falls pos-Zeiger bereits an Position p