diff --git a/data/neetcode-150.json b/data/neetcode-150.json new file mode 100644 index 0000000..f0a68f5 --- /dev/null +++ b/data/neetcode-150.json @@ -0,0 +1,188 @@ +{ + "Arrays & Hashing": [ + "contains-duplicate", + "valid-anagram", + "two-sum", + "group-anagrams", + "top-k-frequent-elements", + "encode-and-decode-strings", + "product-of-array-except-self", + "valid-sudoku", + "longest-consecutive-sequence" + ], + "Two Pointers": [ + "valid-palindrome", + "two-sum-ii-input-array-is-sorted", + "3sum", + "container-with-most-water", + "trapping-rain-water" + ], + "Sliding Window": [ + "best-time-to-buy-and-sell-stock", + "longest-substring-without-repeating-characters", + "longest-repeating-character-replacement", + "permutation-in-string", + "minimum-window-substring", + "sliding-window-maximum" + ], + "Stack": [ + "valid-parentheses", + "min-stack", + "evaluate-reverse-polish-notation", + "daily-temperatures", + "car-fleet", + "largest-rectangle-in-histogram" + ], + "Binary Search": [ + "binary-search", + "search-a-2d-matrix", + "koko-eating-bananas", + "find-minimum-in-rotated-sorted-array", + "search-in-rotated-sorted-array", + "time-based-key-value-store", + "median-of-two-sorted-arrays" + ], + "Linked List": [ + "reverse-linked-list", + "merge-two-sorted-lists", + "linked-list-cycle", + "reorder-list", + "remove-nth-node-from-end-of-list", + "copy-list-with-random-pointer", + "add-two-numbers", + "find-the-duplicate-number", + "lru-cache", + "merge-k-sorted-lists", + "reverse-nodes-in-k-group" + ], + "Trees": [ + "invert-binary-tree", + "maximum-depth-of-binary-tree", + "diameter-of-binary-tree", + "balanced-binary-tree", + "same-tree", + "subtree-of-another-tree", + "lowest-common-ancestor-of-a-binary-search-tree", + "binary-tree-level-order-traversal", + "binary-tree-right-side-view", + "count-good-nodes-in-binary-tree", + "validate-binary-search-tree", + "kth-smallest-element-in-a-bst", + "construct-binary-tree-from-preorder-and-inorder-traversal", + "binary-tree-maximum-path-sum", + "serialize-and-deserialize-binary-tree" + ], + "Heap / Priority Queue": [ + "kth-largest-element-in-a-stream", + "last-stone-weight", + "k-closest-points-to-origin", + "kth-largest-element-in-an-array", + "task-scheduler", + "design-twitter", + "find-median-from-data-stream" + ], + "Backtracking": [ + "subsets", + "combination-sum", + "combination-sum-ii", + "permutations", + "subsets-ii", + "generate-parentheses", + "word-search", + "palindrome-partitioning", + "letter-combinations-of-a-phone-number", + "n-queens" + ], + "Tries": [ + "implement-trie-prefix-tree", + "design-add-and-search-words-data-structure", + "word-search-ii" + ], + "Graphs": [ + "number-of-islands", + "max-area-of-island", + "clone-graph", + "walls-and-gates", + "rotting-oranges", + "pacific-atlantic-water-flow", + "surrounded-regions", + "course-schedule", + "course-schedule-ii", + "graph-valid-tree", + "number-of-connected-components-in-an-undirected-graph", + "redundant-connection", + "word-ladder" + ], + "Advanced Graphs": [ + "network-delay-time", + "reconstruct-itinerary", + "min-cost-to-connect-all-points", + "swim-in-rising-water", + "alien-dictionary", + "cheapest-flights-within-k-stops" + ], + "1-D Dynamic Programming": [ + "climbing-stairs", + "min-cost-climbing-stairs", + "house-robber", + "house-robber-ii", + "longest-palindromic-substring", + "palindromic-substrings", + "decode-ways", + "coin-change", + "maximum-product-subarray", + "word-break", + "longest-increasing-subsequence", + "partition-equal-subset-sum" + ], + "2-D Dynamic Programming": [ + "unique-paths", + "longest-common-subsequence", + "best-time-to-buy-and-sell-stock-with-cooldown", + "coin-change-ii", + "target-sum", + "interleaving-string", + "longest-increasing-path-in-a-matrix", + "distinct-subsequences", + "edit-distance", + "burst-balloons", + "regular-expression-matching" + ], + "Greedy": [ + "maximum-subarray", + "jump-game", + "jump-game-ii", + "gas-station", + "hand-of-straights", + "merge-triplets-to-form-target-triplet", + "partition-labels", + "valid-parenthesis-string" + ], + "Intervals": [ + "insert-interval", + "merge-intervals", + "non-overlapping-intervals", + "meeting-rooms", + "meeting-rooms-ii", + "minimum-interval-to-include-each-query" + ], + "Math & Geometry": [ + "rotate-image", + "spiral-matrix", + "set-matrix-zeroes", + "happy-number", + "plus-one", + "powx-n", + "multiply-strings", + "detect-squares" + ], + "Bit Manipulation": [ + "single-number", + "number-of-1-bits", + "counting-bits", + "reverse-bits", + "missing-number", + "sum-of-two-integers", + "reverse-integer" + ] +}