This is not just a collection of code — it’s a journey of how I solve problems, reflect on mistakes, improve my logic, and master algorithmic thinking step by step.
I use this repo to document my:
- ❓ Understanding of the problem statement
- 🔎 Initial brute-force logic
⚠️ Mistakes or wrong assumptions I made- 🔧 Corrections and debugging steps
- ⚡ Final optimized approach
- 🧪 Edge case analysis and thought clarity
Each problem folder = 📂 One learning story.
Solve with thinking, not just coding.
🔹 Learn DSA deeply, one real problem at a time
🔹 Reflect and journal my thought process
🔹 Avoid copying — solve from scratch with my logic
🔹 Master problem patterns via repetition and intuition
🔹 Prepare for interviews through conceptual clarity and coding confidence
🎯 I’m solving problems from the Leetcode Top Interview List in the same sequence as Apna College's DSA Playlist to follow a structured roadmap.
🎥 Apna College DSA Playlist
- 🔗 Watch Here
- 📋 I follow this playlist to plan my problem-solving topics in order (arrays → strings → recursion → etc.).
🧠 Nikhil Lohia - Algorithmic Paradigms
- 🔗 Watch Here
- 📌 I watch this to think in terms of brute force → optimization and understand how to design an algorithm before coding it.
📖 O’Reilly: Data Structures & Algorithms by Michael McMillan
- 🔗 Book Link
- 📘 I read this for strong conceptual foundations — especially on how data structures work under the hood.
🧩 Leetcode Top Interview 150
- 🔗 Target List
- 🎯 This is my primary problem set right now — each solved problem goes into this repo.
Each problem I solve gets its own folder:
📂 /Problem-Name
┣ 📄 README.md ← My complete thought process, logic, mistakes & learnings
┗ 📄 index.js ← Final optimal solution (with clean code & comments)