INTERVAL TRAINING FOR THE HEAD — THE FULL 250, SOLVED TWICE, EVERY SOLUTION MACHINE-VERIFIED
The grind
250 classic algorithm problems.Each one solved twice — an honest brute force to learn the course, then the optimized line — in both Java and Python, with hints that nudge before they spoil, and a coach's board that walks the pattern step by step.
250 / 250
60 EASY155 MEDIUM35 HARD
01Arrays & Hashing22 / 22
✓ CHIP-TIMEDConcatenation of ArrayEASYOPEN ▸✓ CHIP-TIMEDContains DuplicateEASYOPEN ▸✓ CHIP-TIMEDValid AnagramEASYOPEN ▸✓ CHIP-TIMEDTwo SumEASYOPEN ▸✓ CHIP-TIMEDLongest Common PrefixEASYOPEN ▸✓ CHIP-TIMEDGroup AnagramsMEDIUMOPEN ▸✓ CHIP-TIMEDRemove ElementEASYOPEN ▸✓ CHIP-TIMEDMajority ElementEASYOPEN ▸✓ CHIP-TIMEDDesign HashSetEASYOPEN ▸✓ CHIP-TIMEDDesign HashMapEASYOPEN ▸✓ CHIP-TIMEDSort an ArrayMEDIUMOPEN ▸✓ CHIP-TIMEDSort ColorsMEDIUMOPEN ▸✓ CHIP-TIMEDTop K Frequent ElementsMEDIUMOPEN ▸✓ CHIP-TIMEDEncode and Decode StringsMEDIUMOPEN ▸✓ CHIP-TIMEDRange Sum Query 2D ImmutableMEDIUMOPEN ▸✓ CHIP-TIMEDProduct of Array Except SelfMEDIUMOPEN ▸✓ CHIP-TIMEDValid SudokuMEDIUMOPEN ▸✓ CHIP-TIMEDLongest Consecutive SequenceMEDIUMOPEN ▸✓ CHIP-TIMEDBest Time to Buy And Sell Stock IIMEDIUMOPEN ▸✓ CHIP-TIMEDMajority Element IIMEDIUMOPEN ▸✓ CHIP-TIMEDSubarray Sum Equals KMEDIUMOPEN ▸✓ CHIP-TIMEDFirst Missing PositiveHARDOPEN ▸
02Two Pointers13 / 13
✓ CHIP-TIMEDReverse StringEASYOPEN ▸✓ CHIP-TIMEDValid PalindromeEASYOPEN ▸✓ CHIP-TIMEDValid Palindrome IIEASYOPEN ▸✓ CHIP-TIMEDMerge Strings AlternatelyEASYOPEN ▸✓ CHIP-TIMEDMerge Sorted ArrayEASYOPEN ▸✓ CHIP-TIMEDRemove Duplicates From Sorted ArrayEASYOPEN ▸✓ CHIP-TIMEDTwo Sum II Input Array Is SortedMEDIUMOPEN ▸✓ CHIP-TIMED3SumMEDIUMOPEN ▸✓ CHIP-TIMED4SumMEDIUMOPEN ▸✓ CHIP-TIMEDRotate ArrayMEDIUMOPEN ▸✓ CHIP-TIMEDContainer With Most WaterMEDIUMOPEN ▸✓ CHIP-TIMEDBoats to Save PeopleMEDIUMOPEN ▸✓ CHIP-TIMEDTrapping Rain WaterHARDOPEN ▸
03Sliding Window9 / 9
✓ CHIP-TIMEDContains Duplicate IIEASYOPEN ▸✓ CHIP-TIMEDBest Time to Buy And Sell StockEASYOPEN ▸✓ CHIP-TIMEDLongest Substring Without Repeating CharactersMEDIUMOPEN ▸✓ CHIP-TIMEDLongest Repeating Character ReplacementMEDIUMOPEN ▸✓ CHIP-TIMEDPermutation In StringMEDIUMOPEN ▸✓ CHIP-TIMEDMinimum Size Subarray SumMEDIUMOPEN ▸✓ CHIP-TIMEDFind K Closest ElementsMEDIUMOPEN ▸✓ CHIP-TIMEDMinimum Window SubstringHARDOPEN ▸✓ CHIP-TIMEDSliding Window MaximumHARDOPEN ▸
04Stack15 / 15
✓ CHIP-TIMEDBaseball GameEASYOPEN ▸✓ CHIP-TIMEDValid ParenthesesEASYOPEN ▸✓ CHIP-TIMEDImplement Stack Using QueuesEASYOPEN ▸✓ CHIP-TIMEDImplement Queue using StacksEASYOPEN ▸✓ CHIP-TIMEDMin StackMEDIUMOPEN ▸✓ CHIP-TIMEDEvaluate Reverse Polish NotationMEDIUMOPEN ▸✓ CHIP-TIMEDGenerate ParenthesesMEDIUMOPEN ▸✓ CHIP-TIMEDAsteroid CollisionMEDIUMOPEN ▸✓ CHIP-TIMEDDaily TemperaturesMEDIUMOPEN ▸✓ CHIP-TIMEDOnline Stock SpanMEDIUMOPEN ▸✓ CHIP-TIMEDCar FleetMEDIUMOPEN ▸✓ CHIP-TIMEDSimplify PathMEDIUMOPEN ▸✓ CHIP-TIMEDDecode StringMEDIUMOPEN ▸✓ CHIP-TIMEDMaximum Frequency StackHARDOPEN ▸✓ CHIP-TIMEDLargest Rectangle In HistogramHARDOPEN ▸
05Binary Search14 / 14
✓ CHIP-TIMEDBinary SearchEASYOPEN ▸✓ CHIP-TIMEDSearch Insert PositionEASYOPEN ▸✓ CHIP-TIMEDGuess Number Higher Or LowerEASYOPEN ▸✓ CHIP-TIMEDSqrt(x)EASYOPEN ▸✓ CHIP-TIMEDSearch a 2D MatrixMEDIUMOPEN ▸✓ CHIP-TIMEDKoko Eating BananasMEDIUMOPEN ▸✓ CHIP-TIMEDCapacity to Ship Packages Within D DaysMEDIUMOPEN ▸✓ CHIP-TIMEDFind Minimum In Rotated Sorted ArrayMEDIUMOPEN ▸✓ CHIP-TIMEDSearch In Rotated Sorted ArrayMEDIUMOPEN ▸✓ CHIP-TIMEDSearch In Rotated Sorted Array IIMEDIUMOPEN ▸✓ CHIP-TIMEDTime Based Key Value StoreMEDIUMOPEN ▸✓ CHIP-TIMEDSplit Array Largest SumHARDOPEN ▸✓ CHIP-TIMEDMedian of Two Sorted ArraysHARDOPEN ▸✓ CHIP-TIMEDFind in Mountain ArrayHARDOPEN ▸
06Linked List14 / 14
✓ CHIP-TIMEDReverse Linked ListEASYOPEN ▸✓ CHIP-TIMEDMerge Two Sorted ListsEASYOPEN ▸✓ CHIP-TIMEDLinked List CycleEASYOPEN ▸✓ CHIP-TIMEDReorder ListMEDIUMOPEN ▸✓ CHIP-TIMEDRemove Nth Node From End of ListMEDIUMOPEN ▸✓ CHIP-TIMEDCopy List With Random PointerMEDIUMOPEN ▸✓ CHIP-TIMEDAdd Two NumbersMEDIUMOPEN ▸✓ CHIP-TIMEDFind The Duplicate NumberMEDIUMOPEN ▸✓ CHIP-TIMEDReverse Linked List IIMEDIUMOPEN ▸✓ CHIP-TIMEDDesign Circular QueueMEDIUMOPEN ▸✓ CHIP-TIMEDLRU CacheMEDIUMOPEN ▸✓ CHIP-TIMEDLFU CacheHARDOPEN ▸✓ CHIP-TIMEDMerge K Sorted ListsHARDOPEN ▸✓ CHIP-TIMEDReverse Nodes In K GroupHARDOPEN ▸
07Trees23 / 23
✓ CHIP-TIMEDBinary Tree Inorder TraversalEASYOPEN ▸✓ CHIP-TIMEDBinary Tree Preorder TraversalEASYOPEN ▸✓ CHIP-TIMEDBinary Tree Postorder TraversalEASYOPEN ▸✓ CHIP-TIMEDInvert Binary TreeEASYOPEN ▸✓ CHIP-TIMEDMaximum Depth of Binary TreeEASYOPEN ▸✓ CHIP-TIMEDDiameter of Binary TreeEASYOPEN ▸✓ CHIP-TIMEDBalanced Binary TreeEASYOPEN ▸✓ CHIP-TIMEDSame TreeEASYOPEN ▸✓ CHIP-TIMEDSubtree of Another TreeEASYOPEN ▸✓ CHIP-TIMEDLowest Common Ancestor of a Binary Search TreeMEDIUMOPEN ▸✓ CHIP-TIMEDInsert into a Binary Search TreeMEDIUMOPEN ▸✓ CHIP-TIMEDDelete Node in a BSTMEDIUMOPEN ▸✓ CHIP-TIMEDBinary Tree Level Order TraversalMEDIUMOPEN ▸✓ CHIP-TIMEDBinary Tree Right Side ViewMEDIUMOPEN ▸✓ CHIP-TIMEDConstruct Quad TreeMEDIUMOPEN ▸✓ CHIP-TIMEDCount Good Nodes In Binary TreeMEDIUMOPEN ▸✓ CHIP-TIMEDValidate Binary Search TreeMEDIUMOPEN ▸✓ CHIP-TIMEDKth Smallest Element In a BstMEDIUMOPEN ▸✓ CHIP-TIMEDConstruct Binary Tree From Preorder And Inorder TraversalMEDIUMOPEN ▸✓ CHIP-TIMEDHouse Robber IIIMEDIUMOPEN ▸✓ CHIP-TIMEDDelete Leaves With a Given ValueMEDIUMOPEN ▸✓ CHIP-TIMEDBinary Tree Maximum Path SumHARDOPEN ▸✓ CHIP-TIMEDSerialize And Deserialize Binary TreeHARDOPEN ▸
08Heap / Priority Queue12 / 12
✓ CHIP-TIMEDKth Largest Element In a StreamEASYOPEN ▸✓ CHIP-TIMEDLast Stone WeightEASYOPEN ▸✓ CHIP-TIMEDK Closest Points to OriginMEDIUMOPEN ▸✓ CHIP-TIMEDKth Largest Element In An ArrayMEDIUMOPEN ▸✓ CHIP-TIMEDTask SchedulerMEDIUMOPEN ▸✓ CHIP-TIMEDDesign TwitterMEDIUMOPEN ▸✓ CHIP-TIMEDSingle Threaded CPUMEDIUMOPEN ▸✓ CHIP-TIMEDReorganize StringMEDIUMOPEN ▸✓ CHIP-TIMEDLongest Happy StringMEDIUMOPEN ▸✓ CHIP-TIMEDCar PoolingMEDIUMOPEN ▸✓ CHIP-TIMEDFind Median From Data StreamHARDOPEN ▸✓ CHIP-TIMEDIPOHARDOPEN ▸
09Backtracking16 / 16
✓ CHIP-TIMEDSum of All Subsets XOR TotalEASYOPEN ▸✓ CHIP-TIMEDSubsetsMEDIUMOPEN ▸✓ CHIP-TIMEDCombination SumMEDIUMOPEN ▸✓ CHIP-TIMEDCombination Sum IIMEDIUMOPEN ▸✓ CHIP-TIMEDCombinationsMEDIUMOPEN ▸✓ CHIP-TIMEDPermutationsMEDIUMOPEN ▸✓ CHIP-TIMEDSubsets IIMEDIUMOPEN ▸✓ CHIP-TIMEDPermutations IIMEDIUMOPEN ▸✓ CHIP-TIMEDWord SearchMEDIUMOPEN ▸✓ CHIP-TIMEDPalindrome PartitioningMEDIUMOPEN ▸✓ CHIP-TIMEDLetter Combinations of a Phone NumberMEDIUMOPEN ▸✓ CHIP-TIMEDMatchsticks to SquareMEDIUMOPEN ▸✓ CHIP-TIMEDPartition to K Equal Sum SubsetsMEDIUMOPEN ▸✓ CHIP-TIMEDN QueensHARDOPEN ▸✓ CHIP-TIMEDN Queens IIHARDOPEN ▸✓ CHIP-TIMEDWord Break IIHARDOPEN ▸
10Tries4 / 4
11Graphs21 / 21
✓ CHIP-TIMEDIsland PerimeterEASYOPEN ▸✓ CHIP-TIMEDVerifying An Alien DictionaryEASYOPEN ▸✓ CHIP-TIMEDFind the Town JudgeEASYOPEN ▸✓ CHIP-TIMEDNumber of IslandsMEDIUMOPEN ▸✓ CHIP-TIMEDMax Area of IslandMEDIUMOPEN ▸✓ CHIP-TIMEDClone GraphMEDIUMOPEN ▸✓ CHIP-TIMEDWalls And GatesMEDIUMOPEN ▸✓ CHIP-TIMEDRotting OrangesMEDIUMOPEN ▸✓ CHIP-TIMEDPacific Atlantic Water FlowMEDIUMOPEN ▸✓ CHIP-TIMEDSurrounded RegionsMEDIUMOPEN ▸✓ CHIP-TIMEDOpen The LockMEDIUMOPEN ▸✓ CHIP-TIMEDCourse ScheduleMEDIUMOPEN ▸✓ CHIP-TIMEDCourse Schedule IIMEDIUMOPEN ▸✓ CHIP-TIMEDGraph Valid TreeMEDIUMOPEN ▸✓ CHIP-TIMEDCourse Schedule IVMEDIUMOPEN ▸✓ CHIP-TIMEDNumber of Connected Components In An Undirected GraphMEDIUMOPEN ▸✓ CHIP-TIMEDRedundant ConnectionMEDIUMOPEN ▸✓ CHIP-TIMEDAccounts MergeMEDIUMOPEN ▸✓ CHIP-TIMEDEvaluate DivisionMEDIUMOPEN ▸✓ CHIP-TIMEDMinimum Height TreesMEDIUMOPEN ▸✓ CHIP-TIMEDWord LadderHARDOPEN ▸
12Advanced Graphs10 / 10
✓ CHIP-TIMEDPath with Minimum EffortMEDIUMOPEN ▸✓ CHIP-TIMEDNetwork Delay TimeMEDIUMOPEN ▸✓ CHIP-TIMEDReconstruct ItineraryHARDOPEN ▸✓ CHIP-TIMEDMin Cost to Connect All PointsMEDIUMOPEN ▸✓ CHIP-TIMEDSwim In Rising WaterHARDOPEN ▸✓ CHIP-TIMEDAlien DictionaryHARDOPEN ▸✓ CHIP-TIMEDCheapest Flights Within K StopsMEDIUMOPEN ▸✓ CHIP-TIMEDFind Critical and Pseudo Critical Edges in Minimum Spanning TreeHARDOPEN ▸✓ CHIP-TIMEDBuild a Matrix With ConditionsHARDOPEN ▸✓ CHIP-TIMEDGreatest Common Divisor TraversalHARDOPEN ▸
131-D Dynamic Programming17 / 17
✓ CHIP-TIMEDClimbing StairsEASYOPEN ▸✓ CHIP-TIMEDMin Cost Climbing StairsEASYOPEN ▸✓ CHIP-TIMEDN-th Tribonacci NumberEASYOPEN ▸✓ CHIP-TIMEDHouse RobberMEDIUMOPEN ▸✓ CHIP-TIMEDHouse Robber IIMEDIUMOPEN ▸✓ CHIP-TIMEDLongest Palindromic SubstringMEDIUMOPEN ▸✓ CHIP-TIMEDPalindromic SubstringsMEDIUMOPEN ▸✓ CHIP-TIMEDDecode WaysMEDIUMOPEN ▸✓ CHIP-TIMEDCoin ChangeMEDIUMOPEN ▸✓ CHIP-TIMEDMaximum Product SubarrayMEDIUMOPEN ▸✓ CHIP-TIMEDWord BreakMEDIUMOPEN ▸✓ CHIP-TIMEDLongest Increasing SubsequenceMEDIUMOPEN ▸✓ CHIP-TIMEDPartition Equal Subset SumMEDIUMOPEN ▸✓ CHIP-TIMEDCombination Sum IVMEDIUMOPEN ▸✓ CHIP-TIMEDPerfect SquaresMEDIUMOPEN ▸✓ CHIP-TIMEDInteger BreakMEDIUMOPEN ▸✓ CHIP-TIMEDStone Game IIIHARDOPEN ▸
142-D Dynamic Programming16 / 16
✓ CHIP-TIMEDUnique PathsMEDIUMOPEN ▸✓ CHIP-TIMEDUnique Paths IIMEDIUMOPEN ▸✓ CHIP-TIMEDMinimum Path SumMEDIUMOPEN ▸✓ CHIP-TIMEDLongest Common SubsequenceMEDIUMOPEN ▸✓ CHIP-TIMEDLast Stone Weight IIMEDIUMOPEN ▸✓ CHIP-TIMEDBest Time to Buy And Sell Stock With CooldownMEDIUMOPEN ▸✓ CHIP-TIMEDCoin Change IIMEDIUMOPEN ▸✓ CHIP-TIMEDTarget SumMEDIUMOPEN ▸✓ CHIP-TIMEDInterleaving StringMEDIUMOPEN ▸✓ CHIP-TIMEDStone GameMEDIUMOPEN ▸✓ CHIP-TIMEDStone Game IIMEDIUMOPEN ▸✓ CHIP-TIMEDLongest Increasing Path In a MatrixHARDOPEN ▸✓ CHIP-TIMEDDistinct SubsequencesHARDOPEN ▸✓ CHIP-TIMEDEdit DistanceMEDIUMOPEN ▸✓ CHIP-TIMEDBurst BalloonsHARDOPEN ▸✓ CHIP-TIMEDRegular Expression MatchingHARDOPEN ▸
15Greedy14 / 14
✓ CHIP-TIMEDLemonade ChangeEASYOPEN ▸✓ CHIP-TIMEDMaximum SubarrayMEDIUMOPEN ▸✓ CHIP-TIMEDMaximum Sum Circular SubarrayMEDIUMOPEN ▸✓ CHIP-TIMEDLongest Turbulent SubarrayMEDIUMOPEN ▸✓ CHIP-TIMEDJump GameMEDIUMOPEN ▸✓ CHIP-TIMEDJump Game IIMEDIUMOPEN ▸✓ CHIP-TIMEDJump Game VIIMEDIUMOPEN ▸✓ CHIP-TIMEDGas StationMEDIUMOPEN ▸✓ CHIP-TIMEDHand of StraightsMEDIUMOPEN ▸✓ CHIP-TIMEDDota2 SenateMEDIUMOPEN ▸✓ CHIP-TIMEDMerge Triplets to Form Target TripletMEDIUMOPEN ▸✓ CHIP-TIMEDPartition LabelsMEDIUMOPEN ▸✓ CHIP-TIMEDValid Parenthesis StringMEDIUMOPEN ▸✓ CHIP-TIMEDCandyHARDOPEN ▸
16Intervals7 / 7
✓ CHIP-TIMEDInsert IntervalMEDIUMOPEN ▸✓ CHIP-TIMEDMerge IntervalsMEDIUMOPEN ▸✓ CHIP-TIMEDNon Overlapping IntervalsMEDIUMOPEN ▸✓ CHIP-TIMEDMeeting RoomsEASYOPEN ▸✓ CHIP-TIMEDMeeting Rooms IIMEDIUMOPEN ▸✓ CHIP-TIMEDMeeting Rooms IIIHARDOPEN ▸✓ CHIP-TIMEDMinimum Interval to Include Each QueryHARDOPEN ▸
17Math & Geometry13 / 13
✓ CHIP-TIMEDExcel Sheet Column TitleEASYOPEN ▸✓ CHIP-TIMEDGreatest Common Divisor of StringsEASYOPEN ▸✓ CHIP-TIMEDInsert Greatest Common Divisors in Linked ListMEDIUMOPEN ▸✓ CHIP-TIMEDTranspose MatrixEASYOPEN ▸✓ CHIP-TIMEDRotate ImageMEDIUMOPEN ▸✓ CHIP-TIMEDSpiral MatrixMEDIUMOPEN ▸✓ CHIP-TIMEDSet Matrix ZeroesMEDIUMOPEN ▸✓ CHIP-TIMEDHappy NumberEASYOPEN ▸✓ CHIP-TIMEDPlus OneEASYOPEN ▸✓ CHIP-TIMEDRoman to IntegerEASYOPEN ▸✓ CHIP-TIMEDPow(x, n)MEDIUMOPEN ▸✓ CHIP-TIMEDMultiply StringsMEDIUMOPEN ▸✓ CHIP-TIMEDDetect SquaresMEDIUMOPEN ▸
18Bit Manipulation10 / 10
✓ CHIP-TIMEDSingle NumberEASYOPEN ▸✓ CHIP-TIMEDNumber of 1 BitsEASYOPEN ▸✓ CHIP-TIMEDCounting BitsEASYOPEN ▸✓ CHIP-TIMEDAdd BinaryEASYOPEN ▸✓ CHIP-TIMEDReverse BitsEASYOPEN ▸✓ CHIP-TIMEDMissing NumberEASYOPEN ▸✓ CHIP-TIMEDSum of Two IntegersMEDIUMOPEN ▸✓ CHIP-TIMEDReverse IntegerMEDIUMOPEN ▸✓ CHIP-TIMEDBitwise AND of Numbers RangeMEDIUMOPEN ▸✓ CHIP-TIMEDMinimum Array EndMEDIUMOPEN ▸
COURSE CREDIT
The route map is NeetCode's — the NeetCode 250 (neetcode.io). The problems themselves live on LeetCode, and every row here links to the official start line; none of their words are reprinted on this site.Everything else is me on the road: the briefs, the hints, both solutions in both languages, the boards — built for this site, drafted with my AI pair, reviewed by me, and machine-verified in CI. No affiliation, no endorsement. I'm just a runner on their course.