Revquix 300
Revquix 300 is a curated list of 300 DSA problems that cover every core topic, from arrays to dynamic programming, in five languages.
It is complete interview preparation: the 150 problems plus 150 more, covering every core topic in depth, from easy warm-ups to hard challenges. Every problem is judged against hidden test cases in Python, C++, Java, JavaScript and TypeScript, and each section runs from easy to hard. Revquix 300 includes every problem in Revquix 150, and Revquix 150 includes every problem in Revquix 80.
What you will practise:
- Arrays, Strings and Hashing: 40 problems such as How Many Times, Over a Third and XOR Path Meet.
- Two Pointers and Sliding Window: 24 problems such as Sorted Squares, Two Squares Make It and Palindrome by Swaps.
- Sorting, Binary Search and Intervals: 32 problems such as Top Two Product, First and Last Seen and Weighted Equaliser.
- Linked Lists: 20 problems such as Turn the Chain Around, Ends Inward and Express Lanes List.
- Stacks and Queues: 22 problems such as Bracket Balance, Rock Collisions and Layered Increments.
- Trees and Binary Search Trees: 38 problems such as Tree Depth, Floor Maximums and Merge Small Search Trees.
- Heaps and Greedy: 20 problems such as Flowerbed Planner, Cooldown Scheduler and Kth Cheapest Row Picks.
- Recursion and Backtracking: 18 problems such as Power of Three Climb, Reusable Coins to Target and Tug of War.
- Graphs: 32 problems such as Paint Bucket, Course Plan Feasible and Second-Best Network.
- Dynamic Programming: 44 problems such as Triangle of Sums, Two Equal Piles and Twin Billboards.
- Tries, Bit Manipulation and Design: 10 problems such as The Lone Sock, Prefix Tree and Find All Words.
Work through one section at a time and finish a section before you move on. If a problem feels too hard, try an easier one from the same section first, then come back to it. Every problem comes with worked examples and clear constraints.
- 11 sections
- 300 problems
What it covers
The path
- How Many TimesEasy
- Pair That Hits the TargetEasy
- Best Buy-Sell DayEasy
- Leaders of the PackEasy
- Richest AccountEasy
- Best Stretch SumEasy
- Same Letters, New OrderEasy
- Pattern to WordsEasy
- Neighbourly SubsequenceEasy
- Self-Counting ValueEasy
- Shift the GridEasy
- Anagram FamiliesMedium
- No-Repeat StretchMedium
- Zigzag WriterMedium
- Unbroken Number ChainMedium
- Stretches Summing to KMedium
- Zeros Meet OnesMedium
- Everyone But MeMedium
- Region TotalsMedium
- Over a ThirdMedium
- Multiple of K StretchMedium
- Batch Range UpdatesMedium
- Three Equal SlicesMedium
- XOR StretchesMedium
- Spiral ReaderMedium
- Spiral PainterMedium
- Quarter TurnMedium
- Diagonal ZigzagMedium
- Fraction to DecimalMedium
- Metro Trip AveragesMedium
- Range XOR LookupMedium
- Domain Visit RollupMedium
- Latest Clock From DigitsMedium
- Is It a NumberHard
- Target RectanglesHard
- Smallest Absent PositiveHard
- Median Is KHard
- Imbalance TotalHard
- Skip One BookingHard
- XOR Path MeetHard
- Sorted SquaresEasy
- Best Window TotalEasy
- Letters-Only ReverseEasy
- Sorted Pair FinderEasy
- Trios of Different LettersEasy
- Evens to the FrontEasy
- Exactly K OddMedium
- Shave to ZeroMedium
- Trios to ZeroMedium
- Widest Water TankMedium
- Three-Flag SortMedium
- Two Squares Make ItMedium
- Shortest Enough WindowMedium
- Flip K ZerosMedium
- All Three PresentMedium
- Product Under KMedium
- Power Token PlayMedium
- Frequent Enough LettersMedium
- Short OR WindowMedium
- Exactly K KindsHard
- Smallest Covering WindowHard
- Bounded Window CountHard
- Kth Smallest GapHard
- Palindrome by SwapsHard
- Top Two ProductEasy
- Clash-Free CalendarEasy
- Pair Up for MaxEasy
- Shelf FinderEasy
- Perfect Square TestEasy
- Sorted OccurrencesEasy
- Guess the TicketEasy
- Carpool CapacityMedium
- Merge the BookingsMedium
- Fewest CancellationsMedium
- Swallowed IntervalsMedium
- Citation IndexMedium
- Sort the DiagonalsMedium
- First and Last SeenMedium
- Search the Turned ShelfMedium
- Lowest on the Turned ShelfMedium
- Search the Flat GridMedium
- Snack SpeedMedium
- Ship It in TimeMedium
- Bouquet DayMedium
- Store ShelvingMedium
- Spending CeilingMedium
- Tallest Tower Under BudgetMedium
- Fewest Kinds LeftMedium
- Frog Round TripMedium
- Leftmost Lit ColumnMedium
- Ice Cream BudgetMedium
- Lowest With RepeatsHard
- Kth Entry of a Times TableHard
- Find It in the Hidden MountainHard
- Starting EnergyHard
- Weighted EqualiserHard
- Turn the Chain AroundEasy
- Zip Sorted ChainsEasy
- Drop the ValueEasy
- Dedupe the ChainEasy
- Chain Loop CheckEasy
- Slot Into Sorted ChainEasy
- Where Two Chains MeetEasy
- Cut Nth From EndMedium
- Odd Then Even LinksMedium
- Ends InwardMedium
- Sort the ChainMedium
- Twin TotalsMedium
- Where the Loop BeginsMedium
- Loop LengthMedium
- Taller to the RightMedium
- Recently Used CacheMedium
- Copy the Referral ChainMedium
- Merge K Sorted ChainsHard
- Least Used CacheHard
- Express Lanes ListHard
- Paired BracketsEasy
- Queue From Two StacksEasy
- Next Bigger LookupEasy
- ScorekeeperEasy
- Rolling AverageEasy
- Sea View BuildingsEasy
- Minimum-Aware StackMedium
- Postfix EvaluatorMedium
- Desk CalculatorMedium
- Wait for WarmthMedium
- Rock CollisionsMedium
- Sum of Stretch RangesMedium
- Fewest Bracket RemovalsMedium
- First Unique in StreamMedium
- Widest RampMedium
- Unpack Nested ListsMedium
- Window PeaksHard
- Biggest Bar RectangleHard
- Best Minimum per WidthHard
- Formula Atom CounterHard
- Frequency StackHard
- Layered IncrementsHard
- Tree DepthEasy
- In-Order WalkEasy
- Identical TreesEasy
- Self-Mirrored TreeEasy
- Nearest Leaf DepthEasy
- Longest Branch SpanEasy
- Leaf Sequence MatchEasy
- Find in the Search TreeEasy
- Pair Sum in Search TreeEasy
- Tree TiltEasy
- Tree in BracketsEasy
- Floor by FloorMedium
- Zigzag FloorsMedium
- Downward Target PathsMedium
- Leaf Number TotalMedium
- Shared AncestorMedium
- Rebuild From Pre and InMedium
- Tree to TextMedium
- Floor MaximumsMedium
- Almost Palindromic RoutesMedium
- Prune Zero BranchesMedium
- Grow the Search TreeMedium
- Search Tree AuditMedium
- Kth Smallest KeyMedium
- Shared Ancestor in OrderMedium
- Two Keys SwappedMedium
- Next Key UpMedium
- Rebalance the Search TreeMedium
- Tallest-Root TreeMedium
- Single-Value SubtreesMedium
- Smallest Leaf WordMedium
- Flip-Equal TreesMedium
- Copy the Family TreeMedium
- Column by ColumnHard
- Richest PathHard
- Height After CuttingHard
- Insertion Depth LedgerHard
- Merge Small Search TreesHard
- Flowerbed PlannerEasy
- Even SplitsEasy
- Last PebbleEasy
- Change at the StallEasy
- Most Talked AboutMedium
- Rooms RequiredMedium
- Kth HeaviestMedium
- K Nearest to HomeMedium
- Keep Twins ApartMedium
- Cooldown SchedulerMedium
- Single Core OrderMedium
- Can You Reach the EndMedium
- Fuel LoopMedium
- One Swap BiggerMedium
- Halve the ArrayMedium
- Mini Social FeedMedium
- Live MedianHard
- Deadline CoursesHard
- Hire K for LessHard
- Kth Cheapest Row PicksHard
- Power of Three ClimbEasy
- Recursive ReverseEasy
- Subsets Under BudgetEasy
- Reflected CodeMedium
- Good Digit StringsMedium
- Every SubsetMedium
- Every OrderingMedium
- Every Distinct OrderingMedium
- Reusable Coins to TargetMedium
- Bracket GeneratorMedium
- Case FlipsMedium
- Steady Difference NumbersMedium
- Tile SequencesMedium
- Kth Cheerful StringMedium
- Full CalculatorHard
- Queens BoardsHard
- Fewest Bracket FixesHard
- Tug of WarHard
- Paint BucketEasy
- Island CoastlineEasy
- Is There a WayEasy
- Village JudgeEasy
- Hub of the StarEasy
- Undirected Loop CheckEasy
- Best CentresMedium
- Every Route OutMedium
- Count the IslandsMedium
- Spreading RotMedium
- Two-Ocean FlowMedium
- Shortest CausewayMedium
- Friend CirclesMedium
- Component CountMedium
- Two-Team SplitMedium
- Course Plan FeasibleMedium
- Course OrderMedium
- Directed Loop CheckMedium
- The Extra CableMedium
- Merge the Address BooksMedium
- Equation ConsistencyMedium
- Signal Spread TimeMedium
- Fewest Reachable CityMedium
- Slash RegionsMedium
- Weakest Link RouteMedium
- One-Stroke DrawingMedium
- Word Ladder StepsHard
- Unknown AlphabetHard
- Wells and PipesHard
- Weight-Limited PathsHard
- Coin Collector TreeHard
- Second-Best NetworkHard
- Triangle of SumsEasy
- Bit Count TableEasy
- Memo FibonacciEasy
- Stair ClimberEasy
- Cheapest ClimbEasy
- Three-Back SequenceEasy
- Clip StitchingMedium
- Patience PilesMedium
- Leap ScoreMedium
- Thief in the TreeMedium
- Wildcard BracketsMedium
- K Equal TeamsMedium
- Visit-Once RouteMedium
- Count the Fastest RoutesMedium
- Quiet BurglarMedium
- Can It Be SegmentedMedium
- Fewest CoinsMedium
- Fewest SquaresMedium
- Lightest Grid PathMedium
- Largest Solid SquareMedium
- Count All SquaresMedium
- Two Equal PilesMedium
- Zeros and Ones BudgetMedium
- Trades With Rest DaysMedium
- Travel Pass PlannerMedium
- Chunk and MaxMedium
- Brainpower ExamMedium
- Longest Shared SubsequenceMedium
- Edit StepsMedium
- Interleaved WeaveMedium
- Count the Longest ClimbsMedium
- Pair ChainMedium
- Ideal SubsequenceMedium
- Knight's DialMedium
- Off the EdgeMedium
- All Full TreesMedium
- Watchtower CoverHard
- Two Trades MaxHard
- K Trades MaxHard
- Strange PrinterHard
- K-Deletion PalindromeHard
- Price Spread in a TreeHard
- Changing Letters PathHard
- Twin BillboardsHard