Data Structures

Abstract data types, balanced trees, heaps, and hashing.


foundation tier

Data Structures addresses abstract data types, balanced trees, heaps, and hashing. It sits within Theoretical Foundations and inherits that area’s core questions about correctness, scale, and tractability. This page surveys the conceptual axes of the topic and points to the references that frame ongoing research and teaching. The intent is to be useful both as an entry point for newcomers and as an index for practitioners cross-checking their mental model against the field’s primary sources.

Work on data structures can be organised around a few interlocking concerns: the formal objects under study, the algorithms or systems that compute over them, the resource trade-offs (time, memory, communication, statistical efficiency), and the empirical or theoretical guarantees that practitioners rely on. The sources cited below approach the topic from a mix of these angles.

Foundational references

Cormen, Introduction to Algorithms (2022) is a standard reference for this material and is used both as a curriculum anchor and as a long-form survey of techniques. Sedgewick, Algorithms (2011) is a standard reference for this material and is used both as a curriculum anchor and as a long-form survey of techniques.

Supporting and complementary work

Weiss, Data Structures and Algorithm Analysis in C++ (2013) provides supporting material that complements the primary references — readers comparing approaches will find useful framings, alternative notations, or extensions there.

Open methodological questions in data structures cluster around how to compose the techniques above under realistic constraints — scale, adversarial inputs, partial observability, and shifting workloads. The cited references give the precise statements, proofs, and empirical evaluations that this overview only sketches; downstream topic pages drill into specific subfields.

Prerequisites

Sources

  • textbook · primary · 2022
    Introduction to Algorithms
    cormen-2022
  • textbook · primary · 2011
    Algorithms
    sedgewick-2011
  • textbook · supporting · 2013
    Data Structures and Algorithm Analysis in C++
    weiss-2013

In context

Where this topic sits in the prerequisite graph. Click any node to jump.

Open in full atlas →

Explore

  1. 01

    Arrays and Lists

    Contiguous and linked sequences and their operations.

  2. 02

    Stacks and Queues

    LIFO and FIFO abstract data types and implementations.

  3. 03

    Hash Tables

    Hashing, collision resolution, and probabilistic analysis.

  4. 04

    Binary Search Trees

    BSTs, AVL, red-black trees, and self-balancing schemes.

  5. 05

    B-Trees and B+ Trees

    External-memory search trees used in filesystems and databases.

  6. 06

    Heaps and Priority Queues

    Binary, Fibonacci, and pairing heaps.

  7. 07

    Disjoint-Set Union

    Union-find with path compression and union by rank.

  8. 08

    Tries and Suffix Structures

    Tries, suffix arrays, suffix trees, and FM-index.

  9. 09

    Bloom Filters and Sketches

    Probabilistic membership and frequency sketches.

  10. 10

    Persistent Data Structures

    Functional data structures with full version histories.

  11. 11

    Succinct Data Structures

    Data structures using space close to the information-theoretic lower bound.

  12. 12

    Range and Interval Structures

    Segment trees, Fenwick trees, and interval trees.


Review this topic

This page was drafted by an agent and is waiting on expert review. Spotted a wrong prerequisite, a missing concept, a misattributed source, or a factual slip? Tell us — your review opens a tracked issue maintainers act on.