A structured collection of my Data Structures & Algorithms notes, pattern breakdowns, and LeetCode solutions — written in Java.
DSA-Notes/
├── Patterns/
│ └── Two-Pointers.md
└── LeetCode/
├── LC125-Valid-Palindrome.md
├── LC344-Reverse-String.md
├── LC408-Valid-Word-Abbreviation.md
├── LC680-Valid-Palindrome-II.md
└── LC977-Squares-of-a-Sorted-Array.md
| Pattern | Status |
|---|---|
| Two Pointers | ✅ Done |
| Sliding Window | 🔄 In Progress |
| Binary Search | ⏳ Pending |
| Fast & Slow Pointers | ⏳ Pending |
| BFS / DFS | ⏳ Pending |
| Dynamic Programming | ⏳ Pending |
| # | Title | Difficulty | Pattern |
|---|---|---|---|
| 125 | Valid Palindrome | Easy | Two Pointers |
| 344 | Reverse String | Easy | Two Pointers |
| 408 | Valid Word Abbreviation | Easy | Two Pointers |
| 680 | Valid Palindrome II | Easy | Two Pointers |
| 977 | Squares of a Sorted Array | Easy | Two Pointers |
Pattern notes — concept, Java template, variants, complexity, common mistakes, decision guide, revision log.
LeetCode notes — problem summary, examples, brute force → optimal thought process, Java solution with comments, dry run, complexity, edge cases, mistakes made, similar problems.
All solutions are written in Java.