User:David Eppstein/Fundamental Data Structures

Fundamental Data Structures

 * Introduction
 * Abstract data type
 * Data structure
 * Analysis of algorithms
 * Amortized analysis
 * Accounting method
 * Potential method


 * Sequences
 * Array data type
 * Array data structure
 * Dynamic array
 * Linked list
 * Doubly linked list
 * Stack (abstract data type)
 * Queue (abstract data type)
 * Double-ended queue
 * Circular buffer


 * Dictionaries
 * Associative array
 * Association list
 * Hash table
 * Linear probing
 * Quadratic probing
 * Double hashing
 * Cuckoo hashing
 * Hopscotch hashing
 * Hash function
 * Perfect hash function
 * Universal hashing
 * K-independent hashing
 * Tabulation hashing
 * Cryptographic hash function


 * Sets
 * Set (abstract data type)
 * Bit array
 * Bloom filter
 * MinHash
 * Disjoint-set data structure
 * Partition refinement


 * Priority queues
 * Priority queue
 * Bucket queue
 * Heap (data structure)
 * Binary heap
 * d-ary heap
 * Binomial heap
 * Fibonacci heap
 * Pairing heap
 * Double-ended priority queue
 * Soft heap


 * Successors and neighbors
 * Binary search algorithm
 * Binary search tree
 * Random binary tree
 * Tree rotation
 * Self-balancing binary search tree
 * Treap
 * AVL tree
 * Red–black tree
 * WAVL tree
 * Scapegoat tree
 * Splay tree
 * Tango tree
 * Skip list
 * B-tree
 * B+ tree
 * Rope


 * Integer and string searching
 * Trie
 * Radix tree
 * Suffix tree
 * Suffix array
 * Suffix automaton
 * Van Emde Boas tree
 * Fusion tree