Passionate Problem Solver | Algorithm Enthusiast | Software Developer
|
Problems Solved |
Problems Solved |
Problems Solved |
Problems Solved |
Overall: ββββββββββββββββββββ 84/200 (42%)
Easy: ββββββββββββββββββββ 70/50 (140%)
Medium: ββββββββββββββββββββ 14/100 (14%)
Hard: ββββββββββββββββββββ 0/50 (0%)
Welcome to my LeetCode Solutions Repository! π
This comprehensive collection documents my journey in mastering Data Structures and Algorithms through consistent practice on LeetCode. Each solution is carefully crafted with detailed explanations, complexity analysis, and multiple approaches where applicable.
- π Learning: Document my journey in mastering DSA
- π§ Practice: Regular problem-solving to sharpen coding skills
- π€ Sharing: Help others learn from my solutions and approaches
- πΌ Interview Prep: Building a strong foundation for technical interviews
- π― Growth: Tracking progress and continuous improvement
π¦ Leetcode-Practice-Log/
β
βββ π EASY/ # 70 Problems β
β βββ π 0001_Two_Sum.py
β βββ π 0013_Roman_to_Integer.py
β βββ π 0014_Longest_Common_Prefix.py
β βββ π 0020_Valid_Parentheses.py
β βββ π 0026_Remove_Duplicates.py
β βββ π 0027_Remove_Element.py
β βββ π 0028_Find_Index.py
β βββ π 0035_Search_Insert_position.py
β βββ π 0058_Length_of_Last_Word.py
β βββ π 0066_Plus_One.py
β βββ π 0088_Merge_Sorted_Array.py
β βββ π 0118_Pascals_Triangle.py
β βββ π 0119_Pascals_Triangle_II.py
β βββ π 0121_Best_Time_to_Buy_Sell_Stock.py
β βββ π 0125_Valid_Palindrome.py
β βββ π 0136_Single_Number.py
β βββ π 0169_Majority_Element.py
β βββ π 0217_Contains_Duplicate.py
β βββ π 0268_Missing_Number.py
β βββ π 0283_Move_Zeroes.py
β βββ π 0349_Intersection_of_Arrays.py
β βββ π 0000_WHAT.md
β
βββ π MEDIUM/ # 14 Problems
β βββ π 0000_WHAT.md
β
βββ π HARD/ # 0 Problems
β βββ π 0000_WHAT.md
β
βββ π README.md
| # | Problem | Difficulty | Topics | Solution | LeetCode |
|---|---|---|---|---|---|
| 1 | Two Sum | Array Hash Table |
π Solution | π Link | |
| 13 | Roman to Integer | Hash Table String |
π Solution | π Link | |
| 14 | Longest Common Prefix | String Array |
π Solution | π Link | |
| 20 | Valid Parentheses | Stack String |
π Solution | π Link | |
| 26 | Remove Duplicates from Sorted Array | Array Two Pointers |
π Solution | π Link | |
| 27 | Remove Element | Array Two Pointers |
π Solution | π Link | |
| 28 | Find Index of First Occurrence in String | String String Matching |
π Solution | π Link | |
| 35 | Search Insert Position | Array Binary Search |
π Solution | π Link | |
| 58 | Length of Last Word | String |
π Solution | π Link | |
| 66 | Plus One | Array Math |
π Solution | π Link | |
| 88 | Merge Sorted Array | Array Two Pointers |
π Solution | π Link | |
| 118 | Pascal's Triangle | Array Dynamic Programming |
π Solution | π Link | |
| 119 | Pascal's Triangle II | Array Dynamic Programming |
π Solution | π Link | |
| 121 | Best Time to Buy and Sell Stock | Array Dynamic Programming |
π Solution | π Link | |
| 125 | Valid Palindrome | String Two Pointers |
π Solution | π Link | |
| 136 | Single Number | Array Bit Manipulation |
π Solution | π Link | |
| 169 | Majority Element | Array Hash Table |
π Solution | π Link | |
| 217 | Contains Duplicate | Array Hash Table |
π Solution | π Link | |
| 268 | Missing Number | Array Math Bit Manipulation |
π Solution | π Link | |
| 283 | Move Zeroes | Array Two Pointers |
π Solution | π Link | |
| 349 | Intersection of Two Arrays | Array Hash Table Binary Search |
π Solution | π Link |
Ready to tackle Medium problems! πͺ
π View Medium Folder
The ultimate challenge awaits! π―
π View Hard Folder
π’ Easy: ββββββββββββββββββββ 70/50 (140%)
π‘ Medium: ββββββββββββββββββββ 14/100 (14%)
π΄ Hard: ββββββββββββββββββββ 0/50 (0%)
βββββββββββββββββββββββββββββββββββββββ
π Total: ββββββββββββββββββββ 84/200 (42%)
| Topic | π’ Easy | π‘ Medium | π΄ Hard | Total | Status |
|---|---|---|---|---|---|
| Array | 15 | 0 | 0 | 15 | π₯ |
| String | 5 | 0 | 0 | 5 | π₯ |
| Hash Table | 6 | 0 | 0 | 6 | π₯ |
| Two Pointers | 6 | 0 | 0 | 6 | π₯ |
| Stack | 1 | 0 | 0 | 1 | β‘ |
| Math | 2 | 0 | 0 | 2 | β‘ |
| Binary Search | 2 | 0 | 0 | 2 | β‘ |
| Bit Manipulation | 2 | 0 | 0 | 2 | β‘ |
| Dynamic Programming | 3 | 0 | 0 | 3 | π₯ |
| Linked Lists | 0 | 0 | 0 | 0 | β³ |
| Trees | 0 | 0 | 0 | 0 | β³ |
| Graphs | 0 | 0 | 0 | 0 | β³ |
| Backtracking | 0 | 0 | 0 | 0 | β³ |
| Heap | 0 | 0 | 0 | 0 | β³ |
- π First Problem Solved!
- π 10 Problems Solved
- π 20+ Problems Solved
- π 50 Problems Solved
- π 100 Problems Solved
- π 200 Problems Solved
- π₯ Complete All Easy Problems
- β‘ 100-Day Streak
| Pattern | Description | Difficulty | Used In |
|---|---|---|---|
| πΊοΈ Hash Maps | O(1) lookups and counting | π’ | Two Sum, Contains Duplicate |
| ππ Two Pointers | Efficient array traversal | π’ | Valid Palindrome, Remove Duplicates |
| π Stack | LIFO operations | π’ | Valid Parentheses |
| π Binary Search | Logarithmic search | π‘ | Search Insert Position |
| π’ Bit Manipulation | Bitwise operations | π‘ | Single Number, Missing Number |
| πΎ Dynamic Programming | Optimal substructure | π‘ | Pascal's Triangle, Best Time to Buy |
| π― Greedy | Local optimal choices | π‘ | Coming Soon |
| πͺ Sliding Window | Dynamic window for subarrays | π‘ | Coming Soon |
| π² DFS/BFS | Tree & Graph traversal | π’ | Coming Soon |
| π Backtracking | Explore all possibilities | π‘ | Coming Soon |
| Resource | Type | Description | Link |
|---|---|---|---|
| π― LeetCode | Platform | Practice Problems | Visit |
| πΊ NeetCode | Videos | Visual Solutions & Patterns | Visit |
| π GeeksforGeeks | Articles | DSA Theory & Tutorials | Visit |
| π MIT OCW | Course | Algorithms Course | Visit |
| π VisuAlgo | Tool | Algorithm Visualization | Visit |
| π CLRS | Book | Introduction to Algorithms | Amazon |
| π¬ Abdul Bari | Videos | Algorithm Tutorials | YouTube |
| π» LeetCode Patterns | Guide | Problem Patterns | GitHub |
git clone https://github.com/nikhilxagr/Leetcode-practice-log.git
cd Leetcode-practice-log# Easy problems
cd EASY
# Medium problems (coming soon)
cd MEDIUM
# Hard problems (coming soon)
cd HARD| Goal | Target | Current | Status | Progress |
|---|---|---|---|---|
| Complete Easy Problems | 50 | 70 | β | 140% |
| Complete Medium Problems | 100 | 14 | π | 14% |
| Complete Hard Problems | 50 | 0 | β³ | 0% |
| Master All Patterns | 15 | 5 | π | 33% |
| Complete Blind 75 | 75 | 8 | π | 10% |
| LeetCode Rating | 2000+ | -- | π― | -- |
While this is primarily a personal learning repository, I welcome:
- π‘ Suggestions for better solutions or optimizations
- π Bug reports if you find issues in my code
- π Alternative approaches to problems
- π Resource recommendations for learning
- π€ Questions about any solution
- π΄ Fork the repository
- πΏ Create your feature branch (
git checkout -b feature/improvement) - β
Commit your changes (
git commit -m 'Add: Better solution for problem X') - π€ Push to the branch (
git push origin feature/improvement) - π Open a Pull Request
I'm on a journey to master Data Structures and Algorithms through consistent practice and deep understanding. This repository documents every step of my learning process, celebrating wins and learning from challenges.
- π Understand - Read the problem thoroughly and understand requirements
- π§ Think - Consider multiple approaches and edge cases
- π» Code - Implement the solution with clean code
- β‘ Optimize - Improve time and space complexity
- π§ͺ Test - Verify with multiple test cases and edge cases
- π Document - Explain the solution clearly for future reference
"The only way to learn programming is by writing programs." - Dennis Ritchie
- π₯ Consistency over intensity - Practice daily, even if it's just one problem
- π― Quality over quantity - Understand deeply rather than solving superficially
- π§© Understanding over memorization - Learn patterns, not just solutions
- πͺ Persistence through challenges - Every problem is a learning opportunity
- π Document the journey - Help others learn from my experiences