Skip to content

Latest commit

 

History

History
555 lines (446 loc) · 21.6 KB

File metadata and controls

555 lines (446 loc) · 21.6 KB

Header

LeetCode Python VS Code Git

Daily Progress License Stars

🎯 A systematically organized collection of LeetCode solutions

📚 Structured by Difficulty Level

👨‍💻 Created & Maintained by Nikhil Agrahari

Passionate Problem Solver | Algorithm Enthusiast | Software Developer


📊 Repository Stats

🟢 Easy

70

Problems Solved

🟡 Medium

14

Problems Solved

🔴 Hard

0

Problems Solved

📈 Total

84

Problems Solved

📈 Progress Bar

Overall: ███████░░░░░░░░░░░░░ 84/200 (42%)
Easy:    ██████████████░░░░░░ 70/50  (140%)
Medium:  ░░░░░░░░░░░░░░░░░░░░ 14/100 (14%)
Hard:    ░░░░░░░░░░░░░░░░░░░░ 0/50   (0%)

🎯 About This Repository

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.

🎓 Purpose

  • 📚 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

📂 Repository Structure

📦 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

🗂️ Solved Problems

🟢 Easy Level Problems (70/50)

# Problem Difficulty Topics Solution LeetCode
1 Two Sum Easy Array Hash Table 📝 Solution 🔗 Link
13 Roman to Integer Easy Hash Table String 📝 Solution 🔗 Link
14 Longest Common Prefix Easy String Array 📝 Solution 🔗 Link
20 Valid Parentheses Easy Stack String 📝 Solution 🔗 Link
26 Remove Duplicates from Sorted Array Easy Array Two Pointers 📝 Solution 🔗 Link
27 Remove Element Easy Array Two Pointers 📝 Solution 🔗 Link
28 Find Index of First Occurrence in String Easy String String Matching 📝 Solution 🔗 Link
35 Search Insert Position Easy Array Binary Search 📝 Solution 🔗 Link
58 Length of Last Word Easy String 📝 Solution 🔗 Link
66 Plus One Easy Array Math 📝 Solution 🔗 Link
88 Merge Sorted Array Easy Array Two Pointers 📝 Solution 🔗 Link
118 Pascal's Triangle Easy Array Dynamic Programming 📝 Solution 🔗 Link
119 Pascal's Triangle II Easy Array Dynamic Programming 📝 Solution 🔗 Link
121 Best Time to Buy and Sell Stock Easy Array Dynamic Programming 📝 Solution 🔗 Link
125 Valid Palindrome Easy String Two Pointers 📝 Solution 🔗 Link
136 Single Number Easy Array Bit Manipulation 📝 Solution 🔗 Link
169 Majority Element Easy Array Hash Table 📝 Solution 🔗 Link
217 Contains Duplicate Easy Array Hash Table 📝 Solution 🔗 Link
268 Missing Number Easy Array Math Bit Manipulation 📝 Solution 🔗 Link
283 Move Zeroes Easy Array Two Pointers 📝 Solution 🔗 Link
349 Intersection of Two Arrays Easy Array Hash Table Binary Search 📝 Solution 🔗 Link

🟡 Medium Level Problems (14/100)

Coming Soon

Ready to tackle Medium problems! 💪

📁 View Medium Folder


🔴 Hard Level Problems (0/50)

Coming Soon

The ultimate challenge awaits! 🎯

📁 View Hard Folder


📈 Progress Tracker

🏆 Overall Progress

🟢 Easy:    ██████████████░░░░░░ 70/50  (140%)
🟡 Medium: ░░░░░░░░░░░░░░░░░░░░ 14/100 (14%)
🔴 Hard:   ░░░░░░░░░░░░░░░░░░░░ 0/50  (0%)
───────────────────────────────────────
📊 Total:   ██░░░░░░░░░░░░░░░░░░ 84/200 (42%)

📊 Topics Breakdown

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

💡 Common Patterns & Techniques

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

🛠️ Technologies & Tools

Python LeetCode VS Code Git GitHub Markdown


📚 Learning Resources

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

💻 How to Use This Repository

📥 Clone the Repository

git clone https://github.com/nikhilxagr/Leetcode-practice-log.git
cd Leetcode-practice-log

📂 Navigate to Problems

# Easy problems
cd EASY

# Medium problems (coming soon)
cd MEDIUM

# Hard problems (coming soon)
cd HARD

🎯 My 2026 Goals

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+ -- 🎯 --

🤝 Contributing

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

How to Contribute

  1. 🍴 Fork the repository
  2. 🌿 Create your feature branch (git checkout -b feature/improvement)
  3. ✅ Commit your changes (git commit -m 'Add: Better solution for problem X')
  4. 📤 Push to the branch (git push origin feature/improvement)
  5. 🔃 Open a Pull Request

🌟 About the Author

Nikhil Agrahari

Software Developer | Problem Solver | Tech Enthusiast

Typing SVG

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.

🎯 My Approach

  1. 📖 Understand - Read the problem thoroughly and understand requirements
  2. 🧠 Think - Consider multiple approaches and edge cases
  3. 💻 Code - Implement the solution with clean code
  4. Optimize - Improve time and space complexity
  5. 🧪 Test - Verify with multiple test cases and edge cases
  6. 📝 Document - Explain the solution clearly for future reference

📊 Coding Philosophy

"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

🔗 Connect With Me

GitHub Gmail LeetCode


"The expert in anything was once a beginner."


Made with ❤️ and lots of ☕ by Nikhil Agrahari