A structured repository for tracking and documenting daily LeetCode problem solutions. This repository serves as a learning resource for improving algorithmic problem-solving skills through consistent practice and detailed documentation.
This repository is created for learning and educational purposes. The goal is to:
- Develop systematic problem-solving approaches
- Practice implementing solutions in multiple programming languages
- Document thought processes and algorithmic strategies
- Track progress and maintain consistency in daily practice
- Build a comprehensive reference for common algorithmic patterns
Date | Problem ID | Problem Title | Difficulty | Folder Link |
---|---|---|---|---|
2025-08-22 | 3191 | Find the Minimum Area to Cover All Ones I | Medium | Link |
2025-08-21 | 1504 | Count Submatrices with All Ones | Medium | Link |
2025-08-20 | 1277 | Count Square Submatrices with All Ones | Medium | Link |
2025-08-19 | 2348 | Number of Zero-Filled Subarrays | Medium | Link |
2025-08-18 | 679 | 24 Game | Hard | Link |
2025-08-17 | 837 | New 21 Game | Medium | Link |
2025-08-16 | 1323 | Maximum 69 Number | Easy | Link |
2025-08-15 | 342 | Power of Four | Easy | Link |
2025-08-14 | 2264 | Largest 3-Same-Digit Number in String | Easy | Link |
2025-08-13 | 326 | Power of Three | Easy | Link |
2025-08-12 | 2787 | Ways to Express Integer as Sum of Powers | Medium | Link |
2025-08-11 | 2438 | Range Product Queries of Powers | Medium | Link |
2025-08-10 | 869 | Reordered Power of 2 | Easy | Link |
2025-08-09 | 231 | Power of Two | Easy | Link |
2025-08-08 | 808 | Soup Servings | Medium | Link |
2025-08-07 | - | Find the Maximum Number of Fruits Collected | Medium | Link |
2025-08-06 | 3478 | Fruits Into Baskets III | Medium | Link |
2025-08-05 | 3477 | Fruits Into Baskets II | Easy | Link |
2025-08-04 | 904 | Fruit Into Baskets | Medium | Link |
2025-08-03 | 2106 | Maximum Fruits Harvested After at Most K Steps | Hard | Link |
2025-08-02 | 2857 | Rearranging Fruits | Hard | Link |
2025-08-01 | 118 | Pascal's Triangle | Easy | Link |
2025-07-31 | 898 | Bitwise ORs of Subarrays | Medium | Link |
2025-07-30 | 2412 | Longest Subarray with Maximum Bitwise AND | Medium | Link |
2025-07-29 | 2411 | Smallest Subarrays With Maximum Bitwise OR | Medium | Link |
2025-07-29 | 2044 | Count Number of Maximum Bitwise OR Subsets | Medium | Link |
The repository also includes solutions for the Blind 75 - a curated list of the most important coding interview questions. These problems are organized by category and cover essential algorithmic concepts.
- Array: Two Sum, 3Sum, Container With Most Water, Best Time to Buy and Sell Stock, etc.
- Binary: Counting Bits, Missing Number, Number of 1 Bits, Reverse Bits, etc.
- Dynamic Programming: Climbing Stairs, Coin Change, House Robber, Longest Increasing Subsequence, etc.
- Graph: Clone Graph, Course Schedule, Number of Islands, Word Search, etc.
- Heap: Find Median from Data Stream, Kth Largest Element, Merge K Sorted Lists, etc.
- Interval: Meeting Rooms, Merge Intervals, Non-overlapping Intervals, etc.
- Linked List: Reverse Linked List, Merge Two Sorted Lists, Remove Nth Node From End, etc.
- Matrix: Rotate Image, Set Matrix Zeroes, Word Search, etc.
- String: Longest Substring Without Repeating Characters, Valid Anagram, Valid Parentheses, etc.
- Tree: Maximum Depth of Binary Tree, Invert Binary Tree, Validate Binary Search Tree, etc.
- Total Blind 75 Problems: 75
- Completed: 75 (100%)
- Solutions Available: Java, JavaScript, and Python for all problems
The repository now includes complete solutions for the NeetCode 150 - an expanded list of essential coding interview questions that builds upon the Blind 75. This comprehensive collection covers all major algorithmic patterns and data structures.
- Arrays & Hashing (9 problems): Contains Duplicate, Valid Anagram, Two Sum, Group Anagrams, etc.
- Two Pointers (5 problems): Valid Palindrome, Two Sum II, 3Sum, Container With Most Water, etc.
- Sliding Window (6 problems): Best Time to Buy and Sell Stock, Longest Substring Without Repeating Characters, etc.
- Stack (7 problems): Valid Parentheses, Min Stack, Evaluate Reverse Polish Notation, etc.
- Binary Search (7 problems): Binary Search, Search 2D Matrix, Koko Eating Bananas, etc.
- Linked List (11 problems): Reverse Linked List, Linked List Cycle, Merge Two Sorted Lists, etc.
- Trees (8 problems): Invert Binary Tree, Maximum Depth of Binary Tree, Diameter of Binary Tree, etc.
- Tries (3 problems): Implement Trie, Design Add and Search Words Data Structure, Word Search II
- Backtracking (7 problems): Subsets, Combination Sum, Permutations, Word Search, etc.
- Heap/Priority Queue (7 problems): Kth Largest Element in a Stream, Last Stone Weight, Task Scheduler, etc.
- Graphs (13 problems): Number of Islands, Clone Graph, Pacific Atlantic Water Flow, etc.
- Advanced Graphs (6 problems): Reconstruct Itinerary, Min Cost to Connect All Points, Network Delay Time, etc.
- 1D Dynamic Programming (8 problems): Climbing Stairs, House Robber, Longest Palindromic Substring, etc.
- 2D Dynamic Programming (8 problems): Unique Paths, Longest Common Subsequence, Edit Distance, etc.
- Greedy (8 problems): Maximum Subarray, Jump Game, Gas Station, Hand of Straights, etc.
- Intervals (7 problems): Insert Interval, Merge Intervals, Non-overlapping Intervals, etc.
- Math & Geometry (9 problems): Rotate Image, Spiral Matrix, Set Matrix Zeroes, Power of Two, etc.
- Bit Manipulation (5 problems): Single Number, Reverse Integer, Add Binary, Single Number II, etc.
- Total NeetCode 150 Problems: 134
- Completed: 134 (100%)
- Solutions Available: Java, JavaScript, and Python for all problems
- Categories Completed: 18/18 (100%)
LeetCode-Daily-Solutions/
│
├── README.md # Index of all problems
├── blind-75/ # Blind 75 curated problems by category
├── neetcode-150/ # NeetCode 150 comprehensive problems by category
│ ├── arrays-hashing/ # Arrays & Hashing problems
│ ├── two-pointers/ # Two Pointers problems
│ ├── sliding-window/ # Sliding Window problems
│ ├── stack/ # Stack problems
│ ├── binary-search/ # Binary Search problems
│ ├── linked-list/ # Linked List problems
│ ├── trees/ # Trees problems
│ ├── tries/ # Tries problems
│ ├── backtracking/ # Backtracking problems
│ ├── heap/ # Heap/Priority Queue problems
│ ├── graphs/ # Graphs problems
│ ├── advanced-graphs/ # Advanced Graphs problems
│ ├── 1d-dp/ # 1D Dynamic Programming problems
│ ├── 2d-dp/ # 2D Dynamic Programming problems
│ ├── greedy/ # Greedy problems
│ ├── intervals/ # Intervals problems
│ ├── math-geometry/ # Math & Geometry problems
│ └── bit-manipulation/ # Bit Manipulation problems
├── Easy/ # Easy difficulty problems
├── Medium/ # Medium difficulty problems
├── Hard/ # Hard difficulty problems
└── .github/
└── workflows/ # GitHub Actions (future)
Each problem folder follows the structure:
YYYY-MM-DD-ProblemID-Title/
├── solution.java # Java solution code
├── solution.js # JavaScript solution code
├── solution.py # Python solution code
└── explanation.md # Problem statement, approach, complexities
- Total Problems Solved: 25
- Easy: 8
- Medium: 15
- Hard: 2
- Blind 75: 75 problems (100% complete)
- NeetCode 150: 134 problems (100% complete)
- Total Curated Problems: 209 problems
- Total Problems: 234 problems
- Languages: Java, JavaScript, Python
- Categories: 18 algorithmic categories
- Documentation: Comprehensive explanations for all problems
- Create a new problem folder using the format:
YYYY-MM-DD-ProblemID-Title
- Add your solution code in
solution.java
,solution.js
, andsolution.py
- Document your approach in
explanation.md
- Update this README with the new problem entry
Each problem includes:
- Problem Statement: Clear description of the problem requirements
- Examples: Sample inputs and expected outputs
- Approach: Step-by-step explanation of the solution strategy
- Complexity Analysis: Time and space complexity breakdown
- Key Insights: Important observations and learning points
- Alternative Approaches: Other possible solution methods
- Multi-language Solutions: Implementations in Java, JavaScript, and Python
- Master fundamental data structures and algorithms
- Develop efficient problem-solving strategies
- Practice code optimization and performance analysis
- Improve understanding of time and space complexity
- Build confidence in tackling algorithmic challenges
- All solutions are organized by difficulty level and category
- Each problem includes solutions in Java, JavaScript, and Python
- Detailed explanations and complexity analysis included
- Solutions are date-stamped for tracking progress
- Focus on understanding rather than memorization
- Comprehensive coverage of all major algorithmic patterns
Through completing the Blind 75 and NeetCode 150, you will have mastered:
- Data Structures: Arrays, Hash Tables, Stacks, Queues, Trees, Graphs, Tries, Heaps
- Algorithms: Sorting, Searching, Dynamic Programming, Greedy, Backtracking, Graph Algorithms
- Patterns: Two Pointers, Sliding Window, Binary Search, Bit Manipulation, Interval Scheduling
- Complexity Analysis: Time and space complexity optimization
- Problem-Solving Skills: Systematic approach to tackling algorithmic challenges
This repository is maintained for educational purposes and continuous learning in algorithmic problem-solving. The completion of both Blind 75 and NeetCode 150 represents a significant milestone in coding interview preparation.- 2025-08-28 — Sort Matrix by Diagonals (Medium) → Medium/2025-08-28-3446-Sort-Matrix-by-Diagonals
- 2025-08-29 — Alice and Bob Playing Flower Game (Medium) →
Medium/2025-08-29-3021-Alice-and-Bob-Playing-Flower-Game
- 2025-08-30 — Valid Sudoku (Medium) →
Medium/2025-08-30-36-Valid-Sudoku
- 2025-08-31 — Sudoku Solver (Hard) →
Hard/2025-08-31-37-Sudoku-Solver
- 2025-09-01 — Maximum Average Pass Ratio (Medium) →
Medium/2025-09-01-1792-Maximum-Average-Pass-Ratio
- 2025-09-02 — Find the Number of Ways to Place People I (Medium) →
Medium/2025-09-02-3025-Find-the-Number-of-Ways-to-Place-People-I
- 2025-09-03 — Find the Number of Ways to Place People II (Hard) →
Hard/2025-09-03-3027-Find-the-Number-of-Ways-to-Place-People-II
- 2025-09-04 — Find Closest Person (Easy) →
Easy/2025-09-04-3516-Find-Closest-Person
- 2025-09-06 — Minimum Operations to Make Array Elements Zero (Hard) →
Hard/2025-09-06-3495-Minimum-Operations-to-Make-Array-Elements-Zero
- 2025-09-07 — Find N Unique Integers Sum up to Zero (Easy) →
Easy/2025-09-07-1304-Find-N-Unique-Integers-Sum-up-to-Zero
- 2025-09-08 — Convert Integer to the Sum of Two No-Zero Integers (Easy) →
Easy/2025-09-08-1317-Convert-Integer-to-the-Sum-of-Two-No-Zero-Integers
- 2025-09-09 — Number of People Aware of a Secret (Medium) →
Medium/2025-09-09-2327-Number-of-People-Aware-of-a-Secret
- 2025-09-10 — Minimum Number of People to Teach (Medium) →
Medium/2025-09-10-1733-Minimum-Number-of-People-to-Teach
- 2025-09-11 — Sort Vowels in a String (Medium) →
Medium/2025-09-11-2785-Sort-Vowels-in-a-String
- 2025-09-12 — Vowels Game in a String (Medium) →
Medium/2025-09-12-3227-Vowels-Game-in-a-String
- 2025-09-13 — Find Most Frequent Vowel and Consonant (Easy) →
Easy/2025-09-13-3541-Find-Most-Frequent-Vowel-and-Consonant
- 2025-09-14 — Vowel Spellchecker (Medium) →
Medium/2025-09-14-966-Vowel-Spellchecker
- 2025-09-15 — Maximum Number of Words You Can Type (Easy) →
Easy/2025-09-15-1935-Maximum-Number-of-Words-You-Can-Type
- 2025-09-17 — Design a Food Rating System (Medium) →
Medium/2025-09-17-2353-Design-a-Food-Rating-System
- 2025-09-18 — Design Task Manager (Medium) →
Medium/2025-09-18-3408-Design-Task-Manager
- 2025-09-19 — Design Spreadsheet (Medium) →
Medium/2025-09-19-3484-Design-Spreadsheet
- 2025-09-20 — Implement Router (Medium) →
Medium/2025-09-20-3508-Implement-Router
- 2025-09-21 — Design Movie Rental System (Hard) →
Hard/2025-09-21-1912-Design-Movie-Rental-System
- 2025-09-22 — Count Elements With Maximum Frequency (Easy) →
Easy/2025-09-22-3005-Count-Elements-With-Maximum-Frequency
- 2025-09-23 — Compare Version Numbers (Medium) →
Medium/2025-09-23-165-Compare-Version-Numbers
- 2025-09-24 — Fraction to Recurring Decimal (Medium) →
Medium/2025-09-24-166-Fraction-to-Recurring-Decimal
- 2025-09-25 — Triangle (Medium) →
Medium/2025-09-25-120-Triangle
- 2025-09-26 — Valid Triangle Number (Medium) →
Medium/2025-09-26-611-Valid-Triangle-Number
- 2025-09-27 — Largest Triangle Area (Easy) →
Easy/2025-09-27-812-Largest-Triangle-Area
- 2025-09-28 — Largest Perimeter Triangle (Easy) →
Easy/2025-09-28-976-Largest-Perimeter-Triangle
- 2025-09-29 — Minimum Score Triangulation of Polygon (Medium) →
Medium/2025-09-29-1039-Minimum-Score-Triangulation-of-Polygon
- 2025-09-30 — Find Triangular Sum of an Array (Medium) →
Medium/2025-09-30-2221-Find-Triangular-Sum-of-an-Array
- 2025-10-01 — Water Bottles (Easy) →
Easy/2025-10-01-1518-Water-Bottles
- 2025-10-02 — Water Bottles II (Medium) →
Medium/2025-10-02-3100-Water-Bottles-II
- 2025-10-03 — Trapping Rain Water II (Hard) →
Hard/2025-10-03-407-Trapping-Rain-Water-II
- 2025-10-04 — Container With Most Water (Medium) →
Medium/2025-10-04-11-Container-With-Most-Water
- 2025-10-05 — Pacific Atlantic Water Flow (Medium) →
Medium/2025-10-05-417-Pacific-Atlantic-Water-Flow
- 2025-10-06 — Swim in Rising Water (Hard) →
Hard/2025-10-06-778-Swim-in-Rising-Water
- 2025-10-07 — Avoid Flood in The City (Medium) →
Medium/2025-10-07-1488-Avoid-Flood-in-The-City
- 2025-10-08 — Successful Pairs of Spells and Potions (Medium) →
Medium/2025-10-08-2300-Successful-Pairs-of-Spells-and-Potions
- 2025-10-09 — Find the Minimum Amount of Time to Brew Potions (Medium) →
Medium/2025-10-09-3494-Find-the-Minimum-Amount-of-Time-to-Brew-Potions
- 2025-10-10 — Taking Maximum Energy From the Mystic Dungeon (Medium) →
Medium/2025-10-10-3147-Taking-Maximum-Energy-From-the-Mystic-Dungeon
- 2025-10-11 — Maximum Total Damage With Spell Casting (Medium) →
Medium/2025-10-11-3186-Maximum-Total-Damage-With-Spell-Casting
- 2025-10-12 — Find Sum of Array Product of Magical Sequences (Hard) →
Hard/2025-10-12-3539-Find-Sum-of-Array-Product-of-Magical-Sequences
- 2025-10-13 — Find Resultant Array After Removing Anagrams (Easy) →
Easy/2025-10-13-2273-Find-Resultant-Array-After-Removing-Anagrams
- 2025-10-14 — Adjacent Increasing Subarrays Detection I (Easy) →
Easy/2025-10-14-3349-Adjacent-Increasing-Subarrays-Detection-I
- 2025-10-15 — Adjacent Increasing Subarrays Detection II (Medium) →
Medium/2025-10-15-3350-Adjacent-Increasing-Subarrays-Detection-II