This repository contains a curated collection of solutions to various LeetCode problems. Each solution is crafted to demonstrate efficient problem-solving techniques and best coding practices across diverse problem types and difficulty levels.
- Comprehensive Solutions: Covers a wide range of problem categories, including arrays, linked lists, dynamic programming, and more.
- Optimal Approaches: Emphasis on performance with optimized algorithms and clean, readable code.
- Code Documentation: Solutions include inline comments and explanations to enhance understanding and facilitate learning.
This repository serves as a resource for anyone looking to deepen their knowledge of data structures and algorithms or to prepare for technical interviews.
- Time Complexity: O()
- Space Complexity: O()
- by ar-sayeem [Month DD, YYYY]
| Problem Name | Difficulty |
|---|---|
| 0003-longest-substring-without-repeating-characters | Medium |
| 0049-group-anagrams | Medium |
| 0073-set-matrix-zeroes | Medium |
| 0076-minimum-window-substring | Hard |
| 0138-copy-list-with-random-pointer | Medium |
| 0141-linked-list-cycle | Easy |
| 0142-linked-list-cycle-ii | Medium |
| 0146-lru-cache | Medium |
| 0202-happy-number | Easy |
| 0205-isomorphic-strings | Easy |
| 0242-valid-anagram | Easy |
| 0268-missing-number | Easy |
| 0387-first-unique-character-in-a-string | Easy |
| 0448-find-all-numbers-disappeared-in-an-array | Easy |
| 0496-next-greater-element-i | Easy |
| 0560-subarray-sum-equals-k | Medium |
| 0567-permutation-in-string | Medium |
| 0645-set-mismatch | Easy |
| 0874-walking-robot-simulation | Medium |
| 1980-find-unique-binary-string | Medium |
| 2540-minimum-common-value | Easy |
| 2784-check-if-array-is-good | Easy |
| 2840-check-if-strings-can-be-made-equal-with-operations-ii | Medium |
| Problem Name | Difficulty |
|---|---|
| 0003-longest-substring-without-repeating-characters | Medium |
| 0076-minimum-window-substring | Hard |
| 0239-sliding-window-maximum | Hard |
| 0567-permutation-in-string | Medium |
| 1652-defuse-the-bomb | Easy |
| Problem Name | Difficulty |
|---|---|
| 0048-rotate-image | Medium |
| 0054-spiral-matrix | Medium |
| 0073-set-matrix-zeroes | Medium |
| 0240-search-a-2d-matrix-ii | Medium |
| 1582-special-positions-in-a-binary-matrix | Easy |
| 1886-determine-whether-matrix-can-be-obtained-by-rotation | Easy |
| 2596-check-knight-tour-configuration | Medium |
| 2946-matrix-similarity-after-cyclic-shifts | Easy |
| 3546-equal-sum-grid-partition-i | Medium |
| 3643-flip-square-submatrix-vertically | Easy |
| Problem Name | Difficulty |
|---|---|
| 0002-add-two-numbers | Medium |
| 0048-rotate-image | Medium |
| 0202-happy-number | Easy |
| 0263-ugly-number | Easy |
| 0268-missing-number | Easy |
| 0396-rotate-function | Medium |
| 0788-rotated-digits | Medium |
| 2946-matrix-similarity-after-cyclic-shifts | Easy |
| 3783-mirror-distance-of-an-integer | Easy |
| Problem Name | Difficulty |
|---|---|
| 0004-median-of-two-sorted-arrays | Hard |
| 0033-search-in-rotated-sorted-array | Medium |
| 0222-count-complete-tree-nodes | Easy |
| 0240-search-a-2d-matrix-ii | Medium |
| 0268-missing-number | Easy |
| 0278-first-bad-version | Easy |
| 0287-find-the-duplicate-number | Medium |
| 0493-reverse-pairs | Hard |
| 0540-single-element-in-a-sorted-array | Medium |
| 0852-peak-index-in-a-mountain-array | Medium |
| 2064-minimized-maximum-of-products-distributed-to-any-store | Medium |
| 2540-minimum-common-value | Easy |
| 3633-earliest-finish-time-for-land-and-water-rides-i | Easy |
| 3635-earliest-finish-time-for-land-and-water-rides-ii | Medium |
| Problem Name | Difficulty |
|---|---|
| 0078-subsets | Medium |
| 0090-subsets-ii | Medium |
| 0222-count-complete-tree-nodes | Easy |
| 0268-missing-number | Easy |
| 0287-find-the-duplicate-number | Medium |
| 0645-set-mismatch | Easy |
| 1009-complement-of-base-10-integer | Easy |
| Problem Name | Difficulty |
|---|---|
| 0049-group-anagrams | Medium |
| 0242-valid-anagram | Easy |
| 0268-missing-number | Easy |
| 0645-set-mismatch | Easy |
| 0912-sort-an-array | Medium |
| 2144-minimum-cost-of-buying-candies-with-discount | Easy |
| 2784-check-if-array-is-good | Easy |
| 2840-check-if-strings-can-be-made-equal-with-operations-ii | Medium |
| 3633-earliest-finish-time-for-land-and-water-rides-i | Easy |
| 3635-earliest-finish-time-for-land-and-water-rides-ii | Medium |
| Problem Name | Difficulty |
|---|---|
| 0039-combination-sum | Medium |
| 0040-combination-sum-ii | Medium |
| 0051-n-queens | Hard |
| 0078-subsets | Medium |
| 0090-subsets-ii | Medium |
| 0131-palindrome-partitioning | Medium |
| 1980-find-unique-binary-string | Medium |
| Problem Name | Difficulty |
|---|---|
| 0238-product-of-array-except-self | Medium |
| 0560-subarray-sum-equals-k | Medium |
| 0724-find-pivot-index | Easy |
| 3546-equal-sum-grid-partition-i | Medium |
| Problem Name | Difficulty |
|---|---|
| 0042-trapping-rain-water | Hard |
| 0061-rotate-list | Medium |
| 0125-valid-palindrome | Easy |
| 0141-linked-list-cycle | Easy |
| 0142-linked-list-cycle-ii | Medium |
| 0151-reverse-words-in-a-string | Medium |
| 0202-happy-number | Easy |
| 0234-palindrome-linked-list | Easy |
| 0287-find-the-duplicate-number | Medium |
| 0443-string-compression | Medium |
| 0567-permutation-in-string | Medium |
| 0876-middle-of-the-linked-list | Easy |
| 2095-delete-the-middle-node-of-a-linked-list | Medium |
| 2540-minimum-common-value | Easy |
| 3633-earliest-finish-time-for-land-and-water-rides-i | Easy |
| 3635-earliest-finish-time-for-land-and-water-rides-ii | Medium |
| 3643-flip-square-submatrix-vertically | Easy |
| Problem Name | Difficulty |
|---|---|
| 0002-add-two-numbers | Medium |
| 0021-merge-two-sorted-lists | Easy |
| 0025-reverse-nodes-in-k-group | Hard |
| 0061-rotate-list | Medium |
| 0092-reverse-linked-list-ii | Medium |
| 0138-copy-list-with-random-pointer | Medium |
| 0141-linked-list-cycle | Easy |
| 0142-linked-list-cycle-ii | Medium |
| 0146-lru-cache | Medium |
| 0206-reverse-linked-list | Easy |
| 0234-palindrome-linked-list | Easy |
| 0430-flatten-a-multilevel-doubly-linked-list | Medium |
| 0876-middle-of-the-linked-list | Easy |
| 2095-delete-the-middle-node-of-a-linked-list | Medium |
| Problem Name | Difficulty |
|---|---|
| 0042-trapping-rain-water | Hard |
| 0118-pascals-triangle | Easy |
| 0131-palindrome-partitioning | Medium |
| 0396-rotate-function | Medium |
| 0788-rotated-digits | Medium |
| 3193-count-the-number-of-inversions | Hard |
| Problem Name | Difficulty |
|---|---|
| 0054-spiral-matrix | Medium |
| 0657-robot-return-to-origin | Easy |
| 0682-baseball-game | Easy |
| 0874-walking-robot-simulation | Medium |
| 1910-remove-all-occurrences-of-a-substring | Medium |
| 2073-time-needed-to-buy-tickets | Easy |
| 2553-separate-the-digits-in-an-array | Easy |
| 2596-check-knight-tour-configuration | Medium |
| 2946-matrix-similarity-after-cyclic-shifts | Easy |
| 3838-weighted-word-mapping | Easy |
| Problem Name | Difficulty |
|---|---|
| 0004-median-of-two-sorted-arrays | Hard |
| 0240-search-a-2d-matrix-ii | Medium |
| 0493-reverse-pairs | Hard |
| 0912-sort-an-array | Medium |
| Problem Name | Difficulty |
|---|---|
| 3546-equal-sum-grid-partition-i | Medium |
| Problem Name | Difficulty |
|---|---|
| 0020-valid-parentheses | Easy |
| 0042-trapping-rain-water | Hard |
| 0084-largest-rectangle-in-histogram | Hard |
| 0144-binary-tree-preorder-traversal | Easy |
| 0145-binary-tree-postorder-traversal | Easy |
| 0155-min-stack | Medium |
| 0232-implement-queue-using-stacks | Easy |
| 0234-palindrome-linked-list | Easy |
| 0496-next-greater-element-i | Easy |
| 0503-next-greater-element-ii | Medium |
| 0682-baseball-game | Easy |
| 1910-remove-all-occurrences-of-a-substring | Medium |
| Problem Name | Difficulty |
|---|---|
| 0042-trapping-rain-water | Hard |
| 0084-largest-rectangle-in-histogram | Hard |
| 0496-next-greater-element-i | Easy |
| 0503-next-greater-element-ii | Medium |
| Problem Name | Difficulty |
|---|---|
| 0232-implement-queue-using-stacks | Easy |
| 0239-sliding-window-maximum | Hard |
| 0387-first-unique-character-in-a-string | Easy |
| 2073-time-needed-to-buy-tickets | Easy |
| Problem Name | Difficulty |
|---|---|
| 0239-sliding-window-maximum | Hard |
| 0912-sort-an-array | Medium |
| Problem Name | Difficulty |
|---|---|
| 0239-sliding-window-maximum | Hard |
| Problem Name | Difficulty |
|---|---|
| 0493-reverse-pairs | Hard |
| Problem Name | Difficulty |
|---|---|
| 0493-reverse-pairs | Hard |
| Problem Name | Difficulty |
|---|---|
| 0493-reverse-pairs | Hard |
| 0912-sort-an-array | Medium |
| Problem Name | Difficulty |
|---|---|
| 0493-reverse-pairs | Hard |
| Problem Name | Difficulty |
|---|---|
| 0387-first-unique-character-in-a-string | Easy |
| 2833-furthest-point-from-origin | Easy |
| Problem Name | Difficulty |
|---|---|
| 0014-longest-common-prefix | Easy |
| Problem Name | Difficulty |
|---|---|
| 0144-binary-tree-preorder-traversal | Easy |
| 0145-binary-tree-postorder-traversal | Easy |
| 0222-count-complete-tree-nodes | Easy |
| Problem Name | Difficulty |
|---|---|
| 0144-binary-tree-preorder-traversal | Easy |
| 0145-binary-tree-postorder-traversal | Easy |
| 0430-flatten-a-multilevel-doubly-linked-list | Medium |
| 2596-check-knight-tour-configuration | Medium |
| Problem Name | Difficulty |
|---|---|
| 0144-binary-tree-preorder-traversal | Easy |
| 0145-binary-tree-postorder-traversal | Easy |
| 0222-count-complete-tree-nodes | Easy |
| Problem Name | Difficulty |
|---|---|
| 0796-rotate-string | Easy |
| Problem Name | Difficulty |
|---|---|
| 0278-first-bad-version | Easy |
| Problem Name | Difficulty |
|---|---|
| 2596-check-knight-tour-configuration | Medium |
| Problem Name | Difficulty |
|---|---|
| 0912-sort-an-array | Medium |
| Problem Name | Difficulty |
|---|---|
| 0912-sort-an-array | Medium |
| Problem Name | Difficulty |
|---|---|
| 0912-sort-an-array | Medium |
| Problem Name | Difficulty |
|---|---|
| 0002-add-two-numbers | Medium |
| 0021-merge-two-sorted-lists | Easy |
| 0025-reverse-nodes-in-k-group | Hard |
| 0206-reverse-linked-list | Easy |
| 0234-palindrome-linked-list | Easy |
| Problem Name | Difficulty |
|---|---|
| 0146-lru-cache | Medium |
| 0430-flatten-a-multilevel-doubly-linked-list | Medium |
| Problem Name | Difficulty |
|---|---|
| 0146-lru-cache | Medium |
| 0155-min-stack | Medium |
| 0232-implement-queue-using-stacks | Easy |