diff options
| author | TheSiahxyz <164138827+TheSiahxyz@users.noreply.github.com> | 2025-01-15 02:52:35 +0900 |
|---|---|---|
| committer | TheSiahxyz <164138827+TheSiahxyz@users.noreply.github.com> | 2025-01-15 02:52:35 +0900 |
| commit | 676d31a6da3c339ed4fac25e981b5c8c2b989656 (patch) | |
| tree | 449ad58a0069b4e378a3da46a13d8891acfc21af | |
| parent | 90278334d0fdfc5e3a1f5cb5e39a87196dd03ed8 (diff) | |
created README.md
| -rw-r--r-- | README.md | 273 |
1 files changed, 273 insertions, 0 deletions
diff --git a/README.md b/README.md new file mode 100644 index 0000000..994d86a --- /dev/null +++ b/README.md @@ -0,0 +1,273 @@ +# LeetCode Grind 169 Challenges with Solutions + Additional Exercises + +> If you find this repository helpful, please give me a star to inspire me to keep it updated and benefit more people. Thank you! 🌟 + +[**Grind 169**](https://www.techinterviewhandbook.org/grind75?weeks=16&hours=10) is a dynamic list of top LeetCode interview questions created in 2023. It's up-to-date and well-chosen. We can personalize it according to our schedule, time constraints, and preferences. For the completed Grind 75 solutions, please refer to this [**repository**](https://github.com/open-thought13/leetcode-grind-75-solutions) + +[**Blind 75**](https://www.teamblind.com/post/New-Year-Gift---Curated-List-of-Top-75-LeetCode-Questions-to-Save-Your-Time-OaM1orEU), on the other hand, is a curated list of LeetCode questions created in 2018. We can practice these questions to save time in the job-finding process. Many other LeetCode problems are technical mixes of these individual problems. I practice Blind 75 in parallel on this [**repository**](https://github.com/open-minded13/leetcode-blind-75-solutions). + +To achieve the review of the application of the following data structures and algorithms, except the theory of NP-Completeness. + +- Data Structures: (1) Arrays; (2) Stacks and Queues; (3) Linked Lists; (4) Trees; (5) Graphs; (6) Sorting; (7) Hashing. +- Algorithms: (1) Greedy Method; (2) Divide and Conquer; (3) Tree Searching Strategies; (4) Prune and Search; (5) Dynamic Programming. + +Recommended online textbook for quick review of concepts: [**Hello Algo**](https://www.hello-algo.com/en/) + +## Project Timeline + +- **Start Date**: Apr 12, 2023 +- **Completion Date**: Ongoing 🧙 + +## Comprehensive Solutions & Analysis + +In this repository, you'll find each question meticulously solved with a focus on clarity and efficiency. To ensure you can verify and understand the solutions: + +- **Organized Folders**: Solutions are neatly organized into folders, labeled from Part 1 to Part 8, for easy navigation. +- **Test Cases**: Each solution is accompanied by test cases that validate the code and demonstrate its correctness. +- **Complexity Analysis**: Time and space complexities are provided for each solution, giving you insights into the efficiency of the algorithms used. + +Feel free to delve into the solutions, run the test cases, and review the complexity analysis to deepen your understanding of each problem. This hands-on approach is designed to help you become proficient in coding interviews, where such analyses are crucial. + +## Part 1 + +- [ ] [Easy 1. Two Sum](https://leetcode.com/problems/two-sum/) (picked in Blind 75) +- [ ] [Easy 20. Valid Parentheses](https://leetcode.com/problems/valid-parentheses/) (picked in Blind 75) +- [ ] [Easy 21. Merge Two Sorted Lists](https://leetcode.com/problems/merge-two-sorted-lists/) (picked in Blind 75) +- [ ] [Easy 70. Climbing Stairs](https://leetcode.com/problems/climbing-stairs/) (picked in Blind 75) | Algo: Dynamic Programming +- [ ] [Easy 110. Balanced Binary Tree](https://leetcode.com/problems/balanced-binary-tree/) +- [ ] [Easy 121. Best Time to Buy and Sell Stock](https://leetcode.com/problems/best-time-to-buy-and-sell-stock/) (picked in Blind 75) +- [ ] [Easy 125. Valid Palindrome](https://leetcode.com/problems/valid-palindrome/) (picked in Blind 75) | Algo: Regular Expressions, Two-Pointers Technique, String Manipulation +- [ ] [Easy 141. Linked List Cycle](https://leetcode.com/problems/linked-list-cycle/) (picked in Blind 75) | Algo: Floyd's Cycle Finding (Two-Pointers Technique) +- [ ] [Easy 226. Invert Binary Tree](https://leetcode.com/problems/invert-binary-tree/) (picked in Blind 75) +- [ ] [Easy 232. Implement Queue using Stacks](https://leetcode.com/problems/implement-queue-using-stacks/) +- [ ] [Easy 242. Valid Anagram](https://leetcode.com/problems/valid-anagram/) (picked in Blind 75) +- [ ] [Easy 278. First Bad Version](https://leetcode.com/problems/first-bad-version/) Algo: Binary Search Algo (Divide and Conquer) +- [ ] [Easy 383. Ransom Note](https://leetcode.com/problems/ransom-note/) +- [ ] [Easy 409. Longest Palindrome](https://leetcode.com/problems/longest-palindrome/) +- [ ] [Easy 704. Binary Search](https://leetcode.com/problems/binary-search/) +- [ ] [Easy 733. Flood Fill](https://leetcode.com/problems/flood-fill/) +- [ ] [Medium 235. Lowest Common Ancestor of a Binary Search Tree](https://leetcode.com/problems/lowest-common-ancestor-of-a-binary-search-tree/) (picked in Blind 75) + +## Part 2 + +- [ ] [Easy 13. Roman to Integer](https://leetcode.com/problems/roman-to-integer/description/) +- [ ] [Easy 14. Longest Common Prefix](https://leetcode.com/problems/longest-common-prefix/description/) +- [ ] [Easy 67. Add Binary](https://leetcode.com/problems/add-binary/) +- [ ] [Easy 100. Same Tree](https://leetcode.com/problems/same-tree/description/) +- [ ] [Easy 104. Maximum Depth of Binary Tree](https://leetcode.com/problems/maximum-depth-of-binary-tree/) (picked in Blind 75) | Algo: Depth-First Search +- [ ] ⭐️ [Easy 136. Single Number](https://leetcode.com/problems/single-number/description/) | Algo: Bit Manipulation (XOR) +- [ ] [Easy 169. Majority Element](https://leetcode.com/problems/majority-element/) Algo: Moore Voting Algo +- [ ] [Easy 191. Number of 1 Bits](https://leetcode.com/problems/number-of-1-bits/description/) +- [ ] [Easy 206. Reverse Linked List](https://leetcode.com/problems/reverse-linked-list/) (picked in Blind 75) +- [ ] [Easy 217. Contains Duplicate](https://leetcode.com/problems/contains-duplicate/) +- [ ] [Easy 234. Palindrome Linked List](https://leetcode.com/problems/palindrome-linked-list/description/) +- [ ] [Easy 252. Meeting Rooms](https://leetcode.com/problems/meeting-rooms/description/) +- [ ] [Easy 338. Counting Bits](https://leetcode.com/problems/counting-bits/description/) +- [ ] [Easy 543. Diameter of Binary Tree](https://leetcode.com/problems/diameter-of-binary-tree/) Algo: Depth-First Search; Another Takeaway: Mutable Objects (list, dict, set) +- [ ] [Easy 844. Backspace String Compare](https://leetcode.com/problems/backspace-string-compare/description/) +- [ ] ⭐️ [Easy 876. Middle of the Linked List](https://leetcode.com/problems/middle-of-the-linked-list/) + +## Part 3 + +- [ ] [Easy 9. Palindrome Number](https://leetcode.com/problems/palindrome-number/description/) +- [ ] [Easy 101. Symmetric Tree](https://leetcode.com/problems/symmetric-tree/description/) +- [ ] [Easy 108. Convert Sorted Array to Binary Search Tree](https://leetcode.com/problems/convert-sorted-array-to-binary-search-tree/description/) +- [ ] [Easy 190. Reverse Bits](https://leetcode.com/problems/reverse-bits/description/) +- [ ] [Easy 268. Missing Number](https://leetcode.com/problems/missing-number/description/) +- [ ] [Easy 283. Move Zeroes](https://leetcode.com/problems/move-zeroes/description/) +- [ ] [Easy 572. Subtree of Another Tree](https://leetcode.com/problems/subtree-of-another-tree/description/) +- [ ] [Easy 977. Squares of a Sorted Array](https://leetcode.com/problems/squares-of-a-sorted-array/description/) +- [ ] [Medium 3. Longest Substring Without Repeating Characters](https://leetcode.com/problems/longest-substring-without-repeating-characters/) (picked in Blind 75) | Algo: Sliding Window Technique +- [ ] [Medium 53. Maximum Subarray](https://leetcode.com/problems/maximum-subarray/) (picked in Blind 75) | Algo: Kadane's Algo +- [ ] [Medium 57. Insert Interval](https://leetcode.com/problems/insert-interval/) (picked in Blind 75) +- [ ] [Medium 542. 01 Matrix](https://leetcode.com/problems/01-matrix/) | Algo: Multi-Source Breadth-First Search +- [ ] [Medium 973. K Closest Points to Origin](https://leetcode.com/problems/k-closest-points-to-origin/) | Algo & DS: Heap Sort + +## Part 4 + +- [ ] ⭐️ [Medium 15. 3Sum](https://leetcode.com/problems/3sum/) (picked in Blind 75) | Algo: Two-Pointer Technique and Dictionary (Hashmap); DS: Hashing +- [ ] ⭐️ [Medium 98. Validate Binary Search Tree](https://leetcode.com/problems/validate-binary-search-tree/) (picked in Blind 75) | Algo: Depth-First Search +- [ ] [Medium 102. Binary Tree Level Order Traversal](https://leetcode.com/problems/binary-tree-level-order-traversal/) (picked in Blind 75) | Algo: Breadth-First Search +- [ ] [Medium 133. Clone Graph](https://leetcode.com/problems/clone-graph/) (picked in Blind 75) | Algo: Breadth-First Search +- [ ] [Medium 150. Evaluate Reverse Polish Notation](https://leetcode.com/problems/evaluate-reverse-polish-notation/) +- [ ] ⭐️ [Medium 155. Min Stack](https://leetcode.com/problems/min-stack/) | DS: Stack +- [ ] [Medium 200. Number of Islands](https://leetcode.com/problems/number-of-islands/) (picked in Blind 75) | Algo: Depth-First Search +- [ ] ⭐️ [Medium 207. Course Schedule](https://leetcode.com/problems/course-schedule/) (picked in Brind 75) | Algo: Depth-First Search +- [ ] [Medium 208. Implement Trie (Prefix Tree)](https://leetcode.com/problems/implement-trie-prefix-tree/) | DS: Trie Tree +- [ ] [Medium 238. Product of Array Except Self](https://leetcode.com/problems/product-of-array-except-self/) (picked in Blind 75) +- [ ] ⭐️ [Medium 322. Coin Change](https://leetcode.com/problems/coin-change/) (picked in Blind 75) | Algo: Dynamic Programming + +## Part 5 + +- [ ] ⭐️ [Medium 33. Search in Rotated Sorted Array](https://leetcode.com/problems/search-in-rotated-sorted-array/) (picked in Blind 75) +- [ ] ⭐️ [Medium 39. Combination Sum](https://leetcode.com/problems/combination-sum/) | Algo: Backtracking +- [ ] [Medium 46. Permutations](https://leetcode.com/problems/permutations/) | Algo: Backtracking +- [ ] [Medium 56. Merge Intervals](https://leetcode.com/problems/merge-intervals/) (picked in Blind 75) +- [ ] [Medium 75. Sort Colors](https://leetcode.com/problems/sort-colors/) | Algo: Dutch National Flag +- [ ] [Medium 139. Word Break](https://leetcode.com/problems/word-break/) (picked in Blind 75) | Algo: Dynamic Programming +- [ ] [Medium 236. Lowest Common Ancestor of a Binary Tree](https://leetcode.com/problems/lowest-common-ancestor-of-a-binary-tree/) | Algo: Depth-First Search +- [ ] ⭐️ [Medium 721. Accounts Merge](https://leetcode.com/problems/accounts-merge/) | DS: Disjoint Set Union (DSU or Union–Find Data Structure) +- [ ] ⭐️ [Medium 981. Time Based Key-Value Store](https://leetcode.com/problems/time-based-key-value-store/) | Algo: Binary Search +- [ ] [Medium 994. Rotting Oranges](https://leetcode.com/problems/rotting-oranges/) | Algo: Breadth-First Search + +## Part 6 + +- [ ] ⭐️ [Medium 5. Longest Palindromic Substring](https://leetcode.com/problems/longest-palindromic-substring/) (picked in Blind 75) | Algo: Expand Around Center & Two-Pointers Techniques +- [ ] ⭐️ [Medium 8. String to Integer (atoi)](https://leetcode.com/problems/string-to-integer-atoi/) | DS: Overflow Handling +- [ ] [Medium 11. Container With Most Water](https://leetcode.com/problems/container-with-most-water/) (picked in Blind 75) +- [ ] [Medium 17. Letter Combinations of a Phone Number](https://leetcode.com/problems/letter-combinations-of-a-phone-number/) +- [ ] [Medium 54. Spiral Matrix](https://leetcode.com/problems/spiral-matrix/) (picked in Blind 75) +- [ ] [Medium 62. Unique Paths](https://leetcode.com/problems/unique-paths/) (picked in Blind 75) | Algo: Dynamic Programming +- [ ] [Medium 78. Subsets](https://leetcode.com/problems/subsets/) +- [ ] [Medium 79. Word Search](https://leetcode.com/problems/word-search/) (picked in Blind 75) | Algo: Depth-First Search +- [ ] ⭐️ [Medium 105. Construct Binary Tree from Preorder and Inorder Traversal](https://leetcode.com/problems/construct-binary-tree-from-preorder-and-inorder-traversal/) (picked in Blind 75) | Algo: Preorder & Inorder Traversal +- [ ] [Medium 199. Binary Tree Right Side View](https://leetcode.com/problems/binary-tree-right-side-view/) | Algo: Breadth-First Search +- [ ] ⭐️ [Medium 416. Partition Equal Subset Sum](https://leetcode.com/problems/partition-equal-subset-sum/) | Algo: Dynamic Programming + +## Part 7 + +- [ ] 🌱 [Medium 31. Next Permutation](https://leetcode.com/problems/next-permutation/description/) +- [ ] [Medium 36. Valid Sudoku](https://leetcode.com/problems/valid-sudoku/description/) | DS: Hash Table +- [ ] [Medium 134. Gas Station](https://leetcode.com/problems/gas-station/description/) +- [ ] ⭐️ [Medium 146. LRU Cache](https://leetcode.com/problems/lru-cache/) | DS: Doubly Linked List +- [ ] [Medium 198. House Robber](https://leetcode.com/problems/house-robber/description/) +- [ ] [Medium 230. Kth Smallest Element in a BST](https://leetcode.com/problems/kth-smallest-element-in-a-bst/) (picked in Blind 75) | Algo: Inorder Traversal +- [ ] [Medium 310. Minimum Height Trees](https://leetcode.com/problems/minimum-height-trees/) | Algo: Centroid Decomposition & Pruning; DS: Adjacency List +- [ ] [Medium 438. Find All Anagrams in a String](https://leetcode.com/problems/find-all-anagrams-in-a-string/) | Algo: Fixed-Size Sliding Window; DS: Hash Table +- [ ] ⭐️ [Medium 621. Task Scheduler](https://leetcode.com/problems/task-scheduler/) | Algo: Greedy Approach; DS: Hash Table +- [ ] [Medium 739. Daily Temperatures](https://leetcode.com/problems/daily-temperatures/description/) + +## Part 8 + +- [ ] [Medium 19. Remove Nth Node From End of List](https://leetcode.com/problems/remove-nth-node-from-end-of-list/description/) +- [ ] [Medium 49. Group Anagrams](https://leetcode.com/problems/group-anagrams/description/) +- [ ] [Medium 152. Maximum Product Subarray](https://leetcode.com/problems/maximum-product-subarray/description/) +- [ ] [Medium 211. Design Add and Search Words Data Structure](https://leetcode.com/problems/design-add-and-search-words-data-structure/description/) +- [ ] [Medium 261. Graph Valid Tree](https://leetcode.com/problems/graph-valid-tree/description/) +- [ ] [Medium 287. Find the Duplicate Number](https://leetcode.com/problems/find-the-duplicate-number/description/) +- [ ] [Medium 300. Longest Increasing Subsequence](https://leetcode.com/problems/longest-increasing-subsequence/description/) +- [ ] [Medium 417. Pacific Atlantic Water Flow](https://leetcode.com/problems/pacific-atlantic-water-flow/description/) +- [ ] [Medium 692. Top K Frequent Words](https://leetcode.com/problems/top-k-frequent-words/description/) +- [ ] [Medium 1730. Shortest Path to Get Food](https://leetcode.com/problems/shortest-path-to-get-food/description/) + +## Part 9 + +- [ ] [Medium 24. Swap Nodes in Pairs](https://leetcode.com/problems/swap-nodes-in-pairs/description/) +- [ ] [Medium 113. Path Sum II](https://leetcode.com/problems/path-sum-ii/description/) +- [ ] [Medium 128. Longest Consecutive Sequence](https://leetcode.com/problems/longest-consecutive-sequence/description/) +- [ ] [Medium 189. Rotate Array](https://leetcode.com/problems/rotate-array/description/) +- [ ] [Medium 210. Course Schedule II](https://leetcode.com/problems/course-schedule-ii/description/) +- [ ] [Medium 328. Odd Even Linked List](https://leetcode.com/problems/odd-even-linked-list/description/) +- [ ] [Medium 394. Decode String](https://leetcode.com/problems/decode-string/description/) +- [ ] [Medium 424. Longest Repeating Character Replacement](https://leetcode.com/problems/longest-repeating-character-replacement/description/) +- [ ] [Medium 525. Contiguous Array](https://leetcode.com/problems/contiguous-array/description/) +- [ ] [Medium 658. Find K Closest Elements](https://leetcode.com/problems/find-k-closest-elements/description/) +- [ ] [Medium 662. Maximum Width of Binary Tree](https://leetcode.com/problems/maximum-width-of-binary-tree/description/) + +## Part 10 + +- [ ] [Medium 2. Add Two Numbers](https://leetcode.com/problems/add-two-numbers/description/) +- [ ] [Medium 22. Generate Parentheses](https://leetcode.com/problems/generate-parentheses/description/) +- [ ] [Medium 55. Jump Game](https://leetcode.com/problems/jump-game/description/) +- [ ] [Medium 148. Sort List](https://leetcode.com/problems/sort-list/description/) +- [ ] [Medium 285. Inorder Successor in BST](https://leetcode.com/problems/inorder-successor-in-bst/description/) +- [ ] [Medium 323. Number of Connected Components in an Undirected Graph](https://leetcode.com/problems/number-of-connected-components-in-an-undirected-graph/description/) +- [ ] ⭐️ [Medium 528. Random Pick with Weight](https://leetcode.com/problems/random-pick-with-weight/description/) | Algo: Binary Search; DS: Prefix Sum Array +- [ ] [Medium 560. Subarray Sum Equals K](https://leetcode.com/problems/subarray-sum-equals-k/description/) +- [ ] [Medium 735. Asteroid Collision](https://leetcode.com/problems/asteroid-collision/description/) +- [ ] [Medium 1197. Minimum Knight Moves](https://leetcode.com/problems/minimum-knight-moves/description/) + +## Part 11 + +- [ ] [Medium 48. Rotate Image](https://leetcode.com/problems/rotate-image/description/) +- [ ] [Medium 50. Pow(x, n)](https://leetcode.com/problems/powx-n/description/) | Algo: Exponentiation by Squaring +- [ ] [Medium 74. Search a 2D Matrix](https://leetcode.com/problems/search-a-2d-matrix/description/) +- [ ] [Medium 91. Decode Ways](https://leetcode.com/problems/decode-ways/description/) +- [ ] [Medium 103. Binary Tree Zigzag Level Order Traversal](https://leetcode.com/problems/binary-tree-zigzag-level-order-traversal/description/) +- [ ] [Medium 179. Largest Number](https://leetcode.com/problems/largest-number/description/) +- [ ] [Medium 215. Kth Largest Element in an Array](https://leetcode.com/problems/buildings-with-an-ocean-view/description/) | Algo: Quickselect (Fastest in Average Cases), DS: Heap (Good in All Cases) +- [ ] [Medium 221. Maximal Square](https://leetcode.com/problems/maximal-square/description/) +- [ ] [Medium 253. Meeting Rooms II](https://leetcode.com/problems/meeting-rooms-ii/description/) +- [ ] [Medium 362. Design Hit Counter](https://leetcode.com/problems/design-hit-counter/description/) +- [ ] [Medium 437. Path Sum III](https://leetcode.com/problems/path-sum-iii/description/) + +## Part 12 + +- [ ] [Medium 7. Reverse Integer](https://leetcode.com/problems/reverse-integer/description/) +- [ ] [Medium 16. 3Sum Closest](https://leetcode.com/problems/3sum-closest/description/) +- [ ] [Medium 61. Rotate List](https://leetcode.com/problems/rotate-list/description/) +- [ ] [Medium 73. Set Matrix Zeroes](https://leetcode.com/problems/set-matrix-zeroes/description/) +- [ ] [Medium 143. Reorder List](https://leetcode.com/problems/reorder-list/description/) +- [ ] [Medium 153. Find Minimum in Rotated Sorted Array](https://leetcode.com/problems/find-minimum-in-rotated-sorted-array/description/) +- [ ] ⭐️ [Medium 227. Basic Calculator](https://leetcode.com/problems/basic-calculator-ii/description/) | DS: Stack +- [ ] [Medium 271. Encode and Decode Strings](https://leetcode.com/problems/encode-and-decode-strings/description/) +- [ ] [Medium 787. Cheapest Flights Within K Stops](https://leetcode.com/problems/cheapest-flights-within-k-stops/description/) +- [ ] [Medium 863. All Nodes Distance K in Binary Tree](https://leetcode.com/problems/all-nodes-distance-k-in-binary-tree/description/) + +## Part 13 + +- [ ] [Medium 377. Combination Sum IV](https://leetcode.com/problems/combination-sum-iv/description/) +- [ ] [Medium 380. Insert Delete GetRandom O(1)](https://leetcode.com/problems/insert-delete-getrandom-o1/description/) +- [ ] [Medium 435. Non-overlapping Intervals](https://leetcode.com/problems/non-overlapping-intervals/description/) +- [ ] [Hard 42. Trapping Rain Water](https://leetcode.com/problems/trapping-rain-water/) | Algo: Two-Pointer Technique +- [ ] [Hard 76. Minimum Window Substring](https://leetcode.com/problems/minimum-window-substring/) (picked in Blind 75) | Algo: Sliding Window; DS: Hash Table +- [ ] ⭐️ [Hard 127. Word Ladder](https://leetcode.com/problems/word-ladder/) | Algo: Breadth-First Search; DS: Queue, Hash Table +- [ ] [Hard 224. Basic Calculator](https://leetcode.com/problems/basic-calculator/) +- [ ] ⭐️ [Hard 295. Find Median from Data Stream](https://leetcode.com/problems/find-median-from-data-stream/) (picked in Blind 75) | DS: Min & Max Heaps (Priority Queue) +- [ ] [Hard 297. Serialize and Deserialize Binary Tree](https://leetcode.com/problems/serialize-and-deserialize-binary-tree/) (picked in Blind 75) | Algo: Breadth-First Search; DS: Queue + +## Part 14 + +- [ ] [Hard 4. Median of Two Sorted Arrays](https://leetcode.com/problems/median-of-two-sorted-arrays/description/) +- [ ] [Hard 23. Merge k Sorted Lists](https://leetcode.com/problems/merge-k-sorted-lists/) (picked in Blind 75) | DS: Min Heap (Priority Queue) +- [ ] [Hard 32. Longest Valid Parentheses](https://leetcode.com/problems/longest-valid-parentheses/description/) +- [ ] ⭐️ [Hard 84. Largest Rectangle in Histogram](https://leetcode.com/problems/largest-rectangle-in-histogram/) | DS: Stack +- [ ] [Hard 124. Binary Tree Maximum Path Sum](https://leetcode.com/problems/binary-tree-maximum-path-sum/description/) +- [ ] [Hard 329. Longest Increasing Path in a Matrix](https://leetcode.com/problems/longest-increasing-path-in-a-matrix/description/) +- [ ] [Hard 895. Maximum Frequency Stack](https://leetcode.com/problems/maximum-frequency-stack/description/) +- [ ] ⭐️ [Hard 1235. Maximum Profit in Job Scheduling](https://leetcode.com/problems/maximum-profit-in-job-scheduling/) | Algo: Binary Search, Dynamic Programming + +## Part 15 + +- [ ] [Hard 212. Word Search II](https://leetcode.com/problems/word-search-ii/description/) +- [ ] [Hard 239. Sliding Window Maximum](https://leetcode.com/problems/sliding-window-maximum/description/) +- [ ] [Hard 269. Alien Dictionary](https://leetcode.com/problems/alien-dictionary/description/) +- [ ] [Hard 336. Palindrome Pairs](https://leetcode.com/problems/palindrome-pairs/description/) +- [ ] [Hard 588. Design In-Memory File System](https://leetcode.com/problems/design-in-memory-file-system/description/) +- [ ] [Hard 759. Employee Free Time](https://leetcode.com/problems/employee-free-time/description/) +- [ ] [Hard 815. Bus Routes](https://leetcode.com/problems/bus-routes/description/) + +## Part 16 + +- [ ] [Hard 25. Reverse Nodes in k-Group](https://leetcode.com/problems/reverse-nodes-in-k-group/description/) +- [ ] [Hard 37. Sudoku Solver](https://leetcode.com/problems/sudoku-solver/description/) +- [ ] [Hard 41. First Missing Positive](https://leetcode.com/problems/first-missing-positive/description/) +- [ ] [Hard 51. N-Queens](https://leetcode.com/problems/n-queens/description/) +- [ ] [Hard 632. Smallest Range Covering Elements from K Lists](https://leetcode.com/problems/smallest-range-covering-elements-from-k-lists/description/) + +## Additional Exercises + +### Meta (Facebook) + +- [ ] [Easy 346. Moving Average from Data Stream](https://leetcode.com/problems/moving-average-from-data-stream/) +- [ ] [Easy 408. Valid Word Abbreviation](https://leetcode.com/problems/valid-word-abbreviation/description/) +- [ ] [Easy 680. Valid Palindrome II](https://leetcode.com/problems/valid-palindrome-ii/) | Algo: Two-Pointer Technique +- [ ] [Easy 938. Range Sum of BST](https://leetcode.com/problems/range-sum-of-bst/) +- [ ] [Medium 2. Add Two Numbers](https://leetcode.com/problems/add-two-numbers/description/) | Algo: Carry Management +- [ ] ⭐️ [Medium 71. Simplify Path](https://leetcode.com/problems/simplify-path/description/) +- [ ] [Medium 129. Sum Root to Leaf Numbers](https://leetcode.com/problems/sum-root-to-leaf-numbers/) +- [ ] [Medium 138. Copy List with Random Pointer](https://leetcode.com/problems/copy-list-with-random-pointer/description/) | DS: Linked List +- [ ] [Medium 314. Binary Tree Vertical Order Traversal](https://leetcode.com/problems/binary-tree-vertical-order-traversal/) | Algo: Breadth-First Search (BFS), DS: Queue +- [ ] [Medium 339. Nested List Weight Sum](https://leetcode.com/problems/nested-list-weight-sum/description/) +- [ ] [Medium 426. Convert Binary Search Tree to Sorted Doubly Linked List](https://leetcode.com/problems/convert-binary-search-tree-to-sorted-doubly-linked-list/description/) +- [ ] [Medium 708. Insert into a Sorted Circular Linked List](https://leetcode.com/problems/insert-into-a-sorted-circular-linked-list/) +- [ ] [Medium 763. Partition Labels](https://leetcode.com/problems/partition-labels/) | Algo: Two-Pointer Technique, Dynamic Sliding Window, Greedy Method +- [ ] [Medium 791. Custom Sort String](https://leetcode.com/problems/custom-sort-string/description/) +- [ ] [Medium 841. Keys and Rooms](https://leetcode.com/problems/keys-and-rooms/description/) +- [ ] [Medium 921. Minimum Add to Make Parentheses Valid](https://leetcode.com/problems/minimum-add-to-make-parentheses-valid/description/) +- [ ] [Medium 1011. Capacity To Ship Packages Within D Days](https://leetcode.com/problems/capacity-to-ship-packages-within-d-days/description/) +- [ ] [Medium 1249. Minimum Remove to Make Valid Parentheses](https://leetcode.com/problems/minimum-remove-to-make-valid-parentheses/description/) | DS: Stack +- [ ] [Medium 1570. Dot Product of Two Sparse Vectors](https://leetcode.com/problems/dot-product-of-two-sparse-vectors/) +- [ ] [Medium 1650. Lowest Common Ancestor of a Binary Tree III](https://leetcode.com/problems/lowest-common-ancestor-of-a-binary-tree-iii/) | Algo: Depth-First Search +- [ ] [Medium 1762. Buildings with an Ocean View](https://leetcode.com/problems/buildings-with-an-ocean-view/description/) | DS: Monotonic Stack +- [ ] ⭐️ [Hard 691. Stickers to Spell Word](https://leetcode.com/problems/stickers-to-spell-word/description/) | Algo: DFS; DS: DFS Function Memoization, Counter & Set Operations |
