Code
Pick a pattern
Jump to the interview pattern you want — jdfive special, two pointers through dynamic programming.
Two Pointers
Opposite ends, sorted arrays, and pair problems.
Sliding Window
Fixed and variable windows over sequences.
Prefix Sums
Range queries and cumulative counting tricks.
Linked Lists
Pointers, cycles, and list surgery.
Stacks
Monotonic stacks and nested structure problems.
Binary Search
Search space reduction beyond sorted arrays.
Binary Trees
Tree traversal foundations.
Heaps
Top-K, merging, and streaming medians.
Intervals
Merge, insert, and schedule overlapping ranges.
Matrices
In-place transforms and spiral traversal.
Greedy
Local choices that lead to global optima.
Backtracking
Explore, prune, and build solution trees.
Depth-First Search
Go deep on trees and graphs.
Breadth-First Search
Level-order and shortest unweighted paths.
Graphs
Topo sort, Dijkstra family, and path costs.
Tries
Prefix trees for string problems.
Dynamic Programming
Overlapping subproblems and optimal structure.
jdfive special
Curated aha problems — one unique pattern each, interview-ready.