Topic-wise resources designed to help students learn deeply and connect concepts to interview skills.
Start from fundamentals and progress through interview-heavy array patterns with focused, easy-to-follow resources.
Read nowUnderstand why some structures feel “always fast” even when an occasional step copies many elements — with student-friendly Python examples.
Read nowMonotone search, lower bound, search on answer space, and interview patterns—step by step with Python.
Read nowPair indices moving along a line or on two sequences—basics, windows, merge walk, and interview patterns with Python.
Read nowLIFO, FIFO, deques, and monotone structures—basics through LRU and monotonic patterns with Python.
Read nowPrefix tree for strings and bits—insert, search, and interview patterns with Python.
Read nowBSTs, traversals, balanced trees, and structural tree questions with Python.
Read nowNode manipulation, cycles, middle-finding, and two-pointer patterns—Python first, with clear Node types.
Read nowBitmasking, XOR tricks, subset enumeration, meet-in-the-middle, and SOS-style DP—with Python for students.
Read nowCounting, permutations, inclusion–exclusion, and combinatorial generation—with Python you can run.
Read nowCoordinate compression, areas, and ordering—bilingual lessons with Python (3 canonical skills).
Read nowSplit problems in half, recurse, merge, and pick order statistics—student-friendly Python.
Read nowLoops, I/O, and basic program structure—bilingual lessons with Python (41 canonical foundation skills).
Read nowStudy habits and meta skills that help when a problem is messy or underspecified.
Read nowLocal choices, feasibility checks, and classic scheduling patterns—with Python.
Read nowHash maps, sets, and count arrays—bilingual lessons with Python (23 canonical skills).
Read nowExhaustive building and pruning of choices—bilingual lessons with Python (27 canonical skills).
Read nowRange updates/queries, lazy propagation, and similar structures—bilingual lessons with Python (38 canonical skills).
Read nowShortest paths, trees as graphs, connectivity, and flows—bilingual lessons with Python (81 canonical skills).
Read nowBinary heaps, `heapq`, and patterns for streaming top-k and scheduling.
Read nowPrimes, divisibility, modular inverses, and CRT—bilingual lessons with Python (98 canonical skills).
Read now2D arrays, fast matrix power, linear recurrences, and transition matrices—in Python.
Read nowPrefix sums, running totals, difference arrays for range updates, and transformed arrays—explained with real-world examples and Python.
Read nowFixed and variable subarray/substring windows, two-pointer expansion and shrinking, validation maps, and minimum-window patterns—with Python and real-world hooks.
Read nowTime/space tradeoffs, binary search on the answer, batching and offline queries, precomputation, and generic optimization patterns—bilingual lessons with Python (all canonical skills).
Read nowState transitions, optimal substructure, and memoization—bilingual lessons with Python (29 canonical DP skills).
Read nowCharacters, ASCII, indexing, filtering, replacement, validation, and more—bilingual lessons with Python (all 64 canonical string skills).
Read nowComparison sorts, linear-time tricks, merges, inversions, and how ordering unlocks search and greedy ideas—explained in depth with real-world hooks.
Read now