Learn
Core data structures and algorithms — concepts, complexity tables, and annotated code examples.
Big O Notation
The language of algorithm efficiency. Master how to read, write, and calculate time and space complexity.
Hash Tables
O(1) average insert/lookup. Key building block for most interview problems.
Arrays & Strings
Contiguous memory, O(1) index access. Two pointers & sliding window live here.
Linked Lists
Node chains with O(1) insert/delete. Master fast & slow pointers.
Stacks & Queues
LIFO vs FIFO. Stacks power DFS and expression evaluation.
Trees & BSTs
Hierarchical data. DFS (pre/in/post-order) and BFS. BST enables O(log n) search.
Graphs
Nodes + edges. BFS for shortest path, DFS for connectivity. Topological sort for dependencies.
Recursion & DP
Divide and conquer. Memoize overlapping subproblems. Tabulate bottom-up.
Sorting & Searching
Know O(n log n) sorts cold. Binary search pattern — not just for sorted arrays.
Bit Manipulation
XOR, AND, OR, shifts. Fast and elegant for specific problems.
Interview Patterns
Two pointers, sliding window, fast/slow, merge intervals. Pattern recognition wins interviews.