Skip to content
Home
Data Structures

Data Structures

Data structures guides covering fundamental and advanced data structures, their implementations, trade-offs, and when to use each one.

Learning Path — 18 articles

1 Data Structures Guide with Complexity Cheat Sheet Master data structures — arrays, linked lists, stacks, queues, hash tables, trees, graphs, and heaps with time … Start Here 2 Trees and Graphs Guide — Data Structures and Algorithms Learn trees and graphs — binary trees, BST, AVL trees, graph representations, traversal algorithms, and solving problems … Start Here 3 Arrays and Linked Lists — Performance Trade-offs Guide Master arrays and linked lists — memory layout, time complexity, cache behavior, dynamic arrays, circular lists, and … Start Here 4 Hash Tables Guide — Design and Collision Resolution Master hash tables — hash functions, collision resolution via chaining and open addressing, load factor, resizing, and … 5 Stacks and Queues Guide — LIFO and FIFO Patterns Master stacks and queues — LIFO and FIFO operations, array and linked-list implementations, deques, priority queues, and … 6 Heaps and Priority Queues Guide with Heap Sort Master heaps — binary heap operations, heapify, heap sort, priority queues, language implementations, and applications … 7 Graph Algorithms Guide — BFS, DFS, Shortest Paths Master graph algorithms — BFS and DFS traversal, Dijkstra's shortest path, topological sort, cycle detection, and … 8 Trie Data Structure Guide — Prefix Trees for Strings Master tries — prefix trees, insertion and search, autocomplete, spell checking, compressed tries, and applications in … 9 Sorting Algorithms: Complete Guide Learn sorting algorithms — comparison sorts (quick, merge, heap) vs non-comparison (counting, radix), complexity, … 10 Searching Algorithms Guide — Linear and Binary Search Master searching algorithms — linear search, binary search, interpolation, exponential search, and search strategies for … 11 Dynamic Programming: From Basics to Advanced Learn dynamic programming — memoization, tabulation, optimal substructure, overlapping subproblems, classic DP problems, … 12 Greedy Algorithms: When Local Optima Build Global Solutions Learn greedy algorithms — making locally optimal choices, proof techniques, fractional knapsack, Huffman coding, and … 13 Divide and Conquer: Breaking Problems Down Learn divide and conquer — recursion, master theorem, merge sort, quick sort, binary search, closest pair, and analyzing … 14 Recursion: Thinking Recursively Learn recursion — base cases, recursive cases, stack frames, tail recursion, backtracking, recursion trees, and … 15 Bloom Filters and Probabilistic Data Structures Learn Bloom filters and probabilistic data structures — Bloom filter operations, false positives, counting Bloom … 16 String Data Structures Guide Learn string data structures — suffix trees, tries, Aho-Corasick, Knuth-Morris-Pratt, Z-algorithm, Rabin-Karp, and … Advanced 17 Approximate Nearest Neighbor Search Learn approximate nearest neighbor search — locality-sensitive hashing, product quantization, HNSW, ANNOY, and vector … Advanced 18 Spatial Data Structures: Quadtrees and KD-Trees Learn spatial data structures — quadtrees, kd-trees, R-trees, spatial indexing, range queries, nearest neighbor search, … Advanced