Topics

Fundamental Data Structures

  1. Arrays

    • Fixed-size arrays

    • Dynamic arrays (e.g., ArrayList in Java, Vector in C++)

  2. Linked Lists

    • Singly linked list

    • Doubly linked list

    • Circular linked list

  3. Stacks

    • Array-based implementation

    • Linked list-based implementation

  4. Queues

    • Array-based implementation

    • Linked list-based implementation

    • Circular queue

    • Priority queue

    • Deque (double-ended queue)

  5. Hash Tables

    • HashMap

    • HashSet

    • Collision resolution techniques (chaining, open addressing)

Tree Data Structures

  1. Binary Trees

    • Full binary tree

    • Complete binary tree

    • Perfect binary tree

  2. Binary Search Trees (BST)

    • Balanced BST (e.g., AVL tree, Red-Black tree)

    • Splay tree

    • Treap

  3. Heaps

    • Min-heap

    • Max-heap

    • Binary heap

    • Fibonacci heap

    • Binomial heap

  4. Tries (Prefix Trees)

    • Standard trie

    • Compressed trie (Radix tree)

    • Suffix trie

  5. Segment Trees

    • Standard segment tree

    • Lazy propagation

  6. Fenwick Trees (Binary Indexed Trees)

    • Standard Fenwick tree

  7. B-Trees

    • B-tree

    • B+ tree

    • B* tree

  8. Quad Trees

    • Standard quad tree

  9. K-D Trees

    • Standard K-D tree

Graph Data Structures

  1. Graphs

    • Adjacency matrix

    • Adjacency list

    • Edge list

  2. Specialized Graphs

    • Directed graph (digraph)

    • Weighted graph

    • Undirected graph

    • Directed Acyclic Graph (DAG)

Advanced Data Structures

  1. Disjoint Set (Union-Find)

    • Quick-find

    • Quick-union

    • Union by rank

    • Path compression

  2. Bloom Filters

    • Standard Bloom filter

    • Counting Bloom filter

  3. Skip Lists

    • Standard skip list

  4. Suffix Arrays

    • Standard suffix array

  5. Sparse Tables

    • Standard sparse table

Specialized Data Structures

  1. Trie Variants

    • Patricia trie

    • Suffix tree

  2. Spatial Data Structures

    • R-tree

    • R*-tree

    • k-d tree

    • Quad tree

  3. Multidimensional Data Structures

    • Range tree

    • Interval tree

  4. Persistent Data Structures

    • Persistent array

    • Persistent list

    • Persistent tree

String Data Structures

  1. Suffix Trees

    • Standard suffix tree

    • Ukkonen's suffix tree

  2. Aho-Corasick Automaton

Miscellaneous Data Structures

  1. Deque (Double-Ended Queue)

  2. Multiset

  3. Priority Deque

  4. Ropes

Probabilistic Data Structures

  1. Skip Lists

  2. Bloom Filters

  3. Count-Min Sketch

  4. HyperLogLog

Geometric Data Structures

  1. Segment Trees

  2. Fenwick Trees

  3. Interval Trees

  4. Range Trees

  5. Voronoi Diagrams

  6. Delaunay Triangulations

Hybrid Data Structures

  1. X-fast Trie

  2. Y-fast Trie

Last updated