Datenstruktur
Die Organisation von Daten im Speicher, um bestimmte Operationen effizient zu machen. Die Wahl der richtigen Struktur ist oft der Unterschied zwischen O(n) und O(log n).
Grundlegend: Array, Linked List, Stack, Queue, Hash Table, Baum (BST, B-Baum, Trie), Heap, Graph. Spezialisiert: Bloom Filter, Skip List, Fenwick Tree, Segment Tree, Suffix Array. Robert Tarjan, Don Knuth und The Art of Computer Programming sind die Standardwerke. Modern: persistente/immutable Strukturen (Clojure, Scala), CRDTs für verteilte Anwendungen.