DSA learning path
Arrays & Strings
Traversal, two pointers, sliding window, prefix sums.
Problems in this path
- Two SumOpen
Easy · Hash Map - Pair Sum in a Sorted ArrayOpen
Easy · Two Pointers - Maximum Sum of k Consecutive ValuesOpen
Easy · Sliding Window - Range Sum QueriesOpen
Easy · Prefix Sum - Valid PalindromeOpen
Easy · Two Pointers - Longest Substring Without RepeatsOpen
Medium · Sliding Window - Maximum SubarrayOpen
Medium · Kadane's Algorithm - Trapping Rain WaterOpen
Hard · Two Pointers - Product Except SelfOpen
Medium · Prefix and Suffix Products - Majority ElementOpen
Easy · Boyer-Moore Voting
Read first
Big-O and Complexity
How to describe how fast code grows as its input grows, and why O(n log n) beats O(n²) long before your computer runs out of patience.
12 min readArrays and Dynamic Arrays
Why reading arr[i] is instant, why inserting at the front is slow, and how lists that grow (Python list, ArrayList, vector) work underneath.
14 min readPrefix Sums and Difference Arrays
Precompute cumulative information for constant-time range queries, then reverse the idea to apply many range updates efficiently.
14 min read