C
Volume
DSA
24 notes·13h to read
Foundations
5- Java for DSAThe subset of Java that earns its keep in coding interviews — the types that overflow, the collections that decide your complexity, and the small idioms you reach for in every problem.35m
- Java Strings & Fast InputThe everyday Java you forget mid-problem — immutability and .equals, substring/split/join, StringBuilder, characters as array indices (counting, anagrams, shifts), the Character tests and number conversions, and the input upgrade path with ready-to-paste recipes.35m
- Modular Arithmetic for DSAThe habits that keep big numbers inside a long — reduce as you go, fixing negative remainders — plus the clean-thinking tricks (parity, jump to the next multiple, div & mod as a pair, circular indexing) and, when a problem asks for it, binary exponentiation and the modular inverse.35m
- Combinatorics — Counting TechniquesHow to count without listing — permutation vs combination, casework vs complementary counting, "together" and gap constraints, multiset permutations, stars-and-bars, computing nCr (small-n multiply, Pascal DP, or mod p), and the Pascal / Hockey-Stick / Vandermonde identities.40m
- Java for DSA — WorkbookSelf-check the Java-for-DSA chapter against a 120-question bank in nine formats (multiple choice, select-all, true/false, fill-in-the-blank, guess-the-output, matching, ordering, tap-to-build code puzzles, and sort-into-bins games). A Draw slider sets how many to pull, topic chips filter by area, and every run is a fresh random set that grades itself and explains why — recall the concept, not the position.45m
Notes
14- HashingHash tables from scratch — the principle, hash set vs map, collision resolution, three reusable templates (find duplicates, aggregate by key, design the key), and the prefix-sum + map engine for subarray problems.30m
- Strings — 11 Problems, Every TrickEleven string problems, every core pattern — reverse words, balanced brackets, palindromic substrings, edit distance, expression eval, remove duplicates, compression, subsequence, LCS, longest unique window, and anagram. Full notebook summaries + commented Java.30m
- Stacks — Ten Problems, Every PatternTen stack problems in one reference — valid parentheses, adjacent duplicates, decode string, next greater element, max nesting depth, merge intervals, postfix eval, infix→postfix, largest rectangle in histogram, and trapping rain water. Full walkthroughs + commented Java.30m
- Queues — Five ProblemsFive queue problems — queue using stacks (amortized O(1)), moving average from a stream, flatten multilevel linked list via BFS queue, right node of key in binary tree, and sliding window maximum with a monotonic deque. Full walkthroughs + commented Java.30m
- Heaps & Priority Queues — Five ProblemsFive heap problems — kth largest in array (size-k min-heap), connect ropes minimum cost (Huffman greedy), kth largest in stream (persistent heap), merge M sorted lists (k-way merge), and check if binary tree is min-heap (DFS + array indexing). Full walkthroughs + commented Java.30m
- Binary Search — A Masterclass in ThinkingStop memorizing templates. A first-principles guide to how to invent binary search solutions for problems you've never seen — loop invariants, search space design, predicate construction, boundary movement proofs, and every template variant. Interactive widgets: a binary search visualizer, a boundary-movement simulator, quizzes, and a curated problem roadmap from easy to hard.30m
- Backtracking — Eight ProblemsEight backtracking problems — the do → recurse → undo template applied to generate parentheses, subsets, subsets II, permutations, permutations II, combination sum, and all paths in a matrix. Covers the i-vs-start loop rule and the sort + skip dedup trick. Full walkthroughs + commented Java.30m
- Dynamic ProgrammingThe whole craft in one place — what DP is, how to recognise it, and one 3-step framework (state → recurrence → base cases) applied to a dozen worked examples from Fibonacci to stock trading. Every practice problem links to LeetCode.30m
- DP — From Recursion UpA companion take on the same topic: DP as 95% recursion + 5% memoization. One four-step template, taught recursion-first, then applied unchanged to ten worked problems — coin change, knapsack, subset sum, LIS, decode ways and more.30m
- DP — A Masterclass in ThinkingA deep dive, not a cheat sheet — built to teach how to discover DP solutions on your own. A repeatable 7-step engine (choice → recursion → state → memoize → tabulate), ten pattern families, and interactive widgets: an animated coin-change / LCS / grid table you step through, and a fib recursion tree with a memoization toggle.30m
- Greedy — A Masterclass in ThinkingA deep dive, not a cheat sheet — built to teach how to recognise when greedy is correct and invent the greedy choice yourself. A repeatable engine (propose candidates → break the losers with counterexamples → prove the survivor), the exchange & staying-ahead proofs, ten pattern families, and interactive widgets: an interval-scheduling timeline where you pick the sort key and watch greedy win or lose, an exchange-argument prover, and a jump-game reachability stepper.30m
- Trie — Four ProblemsFour trie problems — build the prefix tree (insert & search), then apply the one node-map + isEnd pattern to longest word with all prefixes present, word break, and detecting duplicate rows in a binary matrix. Full walkthroughs + commented Java.30m
- Matrix — Data StructureMatrix fundamentals, three core problem-solving approaches (brute force, pattern recognition, BFS/DFS), and nine coding problems with full walkthroughs and interview tricks.30m
- Graph Algorithms — Fourteen ProblemsBFS/DFS foundations through fourteen problems: reconstruct itinerary, reachability, cycle detection (directed & negative), undirected-tree check, arrival/departure times, topological sort, bipartite check, strongly-connected check, Dijkstra, snake & ladder, all paths in a DAG, and mother vertex. Full walkthroughs + commented Java.30m
Trackers
5- Arrays Tracker69 array problems across eight phases, curated to install a reduction table rather than a checklist — index discipline, two pointers, prefix sums and difference arrays, fixed and variable windows, Kadane, then seven Hard consolidations. Binary search is deliberately out of scope. Each row cycles through fresh / assisted / revised, and Part 1 carries the per-problem derivation loop and log template the whole set is built around.35m
- Tree Problems TrackerA de-duplicated set of binary tree problems ordered as a learning path — each stage builds on the patterns from the one before. Tick problems off, expand for hints, and jump to a solving platform.35m
- Dynamic Programming Tracker70 de-duplicated DP problems as a guided ladder — Striver's patterns fused with the LeetCode DP card and GfG classics. Tick them off, expand any row for the state/recurrence/base-case hint, and jump to LC, NeetCode, TUF, GfG, or your own DP notes.35m
- Greedy Algorithms TrackerA curated greedy problem set fused from the LeetCode greedy card and Striver's A2Z ladder, ordered as a learning path by intuition family. Six stages — from warm-up choices through scheduling, heap-driven greedy, and string / array tricks to hard constructions. Tick problems off, expand for the greedy-choice hint, and jump to LC, NeetCode, TUF, or GfG.35m
- Month 1 — CalibrationNot a ladder but a programme: four phases across Aug 17 – Sep 15 that measure where you actually stand. Three mornings of blank-page Java fluency, then a cold diagnostic over 25 shuffled problems with the topic hidden until you've scored yourself G/Y/R. A seven-step protocol keeps the editor closed until the approach is written down, with a 10-minute alert and a 30-minute hard stop. Phase 3 is deliberately empty — the weakest topics fill it — then a 12-problem re-test compares G-rates against the baseline.35m