Data Structures and Algorithms for Coding Interviews

For engineers and CS students preparing for technical interviews: recognize the patterns behind common problems, from hash maps and sliding windows to graphs, heaps, and dynamic programming, pick the right one, and justify its time and space cost.

4 sections ยท 12 lessons

Course outline

Complexity Budgets

  1. Big-O as an Interview Time Budget
  2. The Hidden Costs Inside Python Built-ins

Arrays and Hashing

  1. Hash Maps: Spend Memory, Skip the Scan
  2. Two Pointers Closing In From Both Ends
  3. Sliding Windows That Never Back Up
  4. Prefix Sums: Precompute Once, Answer Fast
  5. Choosing an Array Pattern Under Pressure

Stacks, Search, Trees

  1. Stacks for Nesting and Nearest Smaller
  2. Binary Search on Any Yes or No Question
  3. Tree Recursion: Trust the Subtree

Graphs, Heaps, and DP

  1. BFS or DFS: Fewest Steps or Full Exploration
  2. Heaps: Top K and the Next Closest Node
  3. Dynamic Programming: Cache Repeated Subproblems
  4. Routing a Delivery App Interview

Start learning with Wondering