Im Gegensatz zu einer implementierten Datenstruktur stellt eine abstrakte Datenstruktur nur die Idee einer Art der Speicherung dar. Abstrakte Datenstrukturen sind grundsätzliche Beschreibungen, wie Daten abgespeichert werden können. Typische abstrakte Datenstrukturen sind Felder, Listen, Stacks, Queues u.ä. Sie werden in verschiedenen Programmen dann den entsprechenden Umständen angepaßt implementiert.