Home / DSA Advanced
DSA Advanced
The hard canon: median of two sorted arrays, segment trees, interval DP, string algorithms, MST and shortest paths in depth, LFU and design problems — ending in a timed mock-interview gauntlet.
Start learning ❯❯93 lessons · 17 topics · 0/93 completed
Course contents
Work top to bottom — the sidebar is the course. Topics later in the list assume the ones before them.
DSA What Changes at the Hard Level
Advanced · ⏱ 7 min · standalone lesson
Hard Binary Search
- DSA Median of Two Sorted Arrays
- DSA Split Array Largest Sum
- DSA Minimum in a Rotated Array with Duplicates
- DSA Searching a Rotated Array with Duplicates
- DSA Median from a Data Stream
Monotonic Structures, Completed
- DSA The Monotonic Queue
- DSA Sliding Window Maximum
- DSA Trapping Rain Water II
- DSA Sum of Subarray Minimums
- DSA Sum of Subarray Ranges
- DSA Basic Calculator
Hard Arrays and Intervals
- DSA Gas Station
- DSA First Missing Positive
- DSA Find the Duplicate Number
- DSA Insert, Delete and GetRandom in O(1)
- DSA Interval List Intersections
- DSA Maximum Product Subarray
String Algorithms
- DSA KMP Pattern Matching
- DSA Rabin–Karp Rolling Hash
- DSA The Z Algorithm
- DSA Suffix Structures, Surveyed
- DSA Longest Palindromic Substring
- DSA Shortest Palindrome
Trees, Hardest
- DSA Binary Tree Maximum Path Sum
- DSA House Robber III
- DSA The Tree DP Pattern
- DSA Recovering a Swapped BST
- DSA Counting Nodes in a Complete Tree
- DSA Finding Duplicate Subtrees
- DSA Vertical Order Traversal
Graphs, Hardest
- DSA Alien Dictionary
- DSA Bellman–Ford
- DSA Floyd–Warshall
- DSA 0-1 BFS
- DSA A* Search, Surveyed
- DSA Kruskal's Algorithm
- DSA Prim's Algorithm
- DSA Minimum Cost to Connect All Points
- DSA Swim in Rising Water
- DSA Critical Connections (Bridges)
Segment Trees and Fenwick Trees
- DSA When Prefix Sums Fail
- DSA Segment Trees
- DSA Lazy Propagation
- DSA Fenwick Trees (Binary Indexed)
- DSA Count of Smaller Numbers after Self
Balanced Trees
- DSA When BSTs Go Bad
- DSA Rotations and AVL Balance
- DSA An AVL Tree from Scratch
- DSA Ordered Data in Python
DP on Strings
- DSA Longest Common Subsequence
- DSA Recovering the Actual LCS
- DSA Edit Distance
- DSA Distinct Subsequences
- DSA Longest Palindromic Subsequence
- DSA Wildcard Matching
- DSA Regular Expression Matching
DP on Intervals and Grids
- DSA DP on Grids
- DSA Maximal Square
- DSA Longest Increasing Path in a Matrix
- DSA The Interval DP Pattern
- DSA Burst Balloons
- DSA Minimum Cost to Cut a Stick
- DSA Stone Game
DP, Advanced Forms
- DSA LIS in O(n log n)
- DSA Bitmask DP
- DSA Digit DP
- DSA Knapsack Variants
- DSA Target Sum
- DSA Recovering the Knapsack's Contents
- DSA DP Optimisations, Surveyed
Design Problems
- DSA LFU Cache
- DSA Bloom Filters
- DSA Designing a Mini Twitter
- DSA Reservoir Sampling and Honest Randomness
- DSA Snapshot Array
- DSA The All O(1) Structure
Backtracking, Hardest
- DSA N-Queens
- DSA Solving Sudoku
- DSA Word Search II
- DSA Restoring IP Addresses
- DSA Partition into K Equal Subsets
Greedy, Proven
- DSA Activity Selection and the Exchange Argument
- DSA Partition Labels
- DSA Non-Overlapping Intervals
- DSA Queue Reconstruction by Height
- DSA Remove Duplicate Letters
Interview Craft
- DSA The Interview Loop
- DSA Edge Cases and Testing
- DSA When You Are Stuck
- DSA Stating Complexity Honestly
- DSA A Worked Mock Interview
DSA Advanced Capstone — the Mock Gauntlet
Advanced · ⏱ 10 min · standalone lesson