Skip to content

varnit-ta/LeetCode-Solutions

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2,128 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A collection of LeetCode questions to ace the coding interview! - Created using LeetHub v2

LeetCode Topics

Array

0004-median-of-two-sorted-arrays
0011-container-with-most-water
0015-3sum
0018-4sum
0031-next-permutation
0033-search-in-rotated-sorted-array
0034-find-first-and-last-position-of-element-in-sorted-array
0035-search-insert-position
0036-valid-sudoku
0037-sudoku-solver
0041-first-missing-positive
0042-trapping-rain-water
0045-jump-game-ii
0046-permutations
0051-n-queens
0053-maximum-subarray
0054-spiral-matrix
0055-jump-game
0056-merge-intervals
0057-insert-interval
0059-spiral-matrix-ii
0063-unique-paths-ii
0064-minimum-path-sum
0073-set-matrix-zeroes
0074-search-a-2d-matrix
0075-sort-colors
0078-subsets
0080-remove-duplicates-from-sorted-array-ii
0081-search-in-rotated-sorted-array-ii
0084-largest-rectangle-in-histogram
0085-maximal-rectangle
0088-merge-sorted-array
0090-subsets-ii
0105-construct-binary-tree-from-preorder-and-inorder-traversal
0106-construct-binary-tree-from-inorder-and-postorder-traversal
0108-convert-sorted-array-to-binary-search-tree
0118-pascals-triangle
0119-pascals-triangle-ii
0120-triangle
0121-best-time-to-buy-and-sell-stock
0122-best-time-to-buy-and-sell-stock-ii
0128-longest-consecutive-sequence
0130-surrounded-regions
0134-gas-station
0135-candy
0136-single-number
0139-word-break
0152-maximum-product-subarray
0153-find-minimum-in-rotated-sorted-array
0162-find-peak-element
0167-two-sum-ii-input-array-is-sorted
0169-majority-element
0189-rotate-array
0198-house-robber
0200-number-of-islands
0213-house-robber-ii
0215-kth-largest-element-in-an-array
0216-combination-sum-iii
0218-the-skyline-problem
0228-summary-ranges
0229-majority-element-ii
0239-sliding-window-maximum
0240-search-a-2d-matrix-ii
0260-single-number-iii
0283-move-zeroes
0300-longest-increasing-subsequence
0303-range-sum-query-immutable
0322-coin-change
0329-longest-increasing-path-in-a-matrix
0347-top-k-frequent-elements
0349-intersection-of-two-arrays
0350-intersection-of-two-arrays-ii
0354-russian-doll-envelopes
0368-largest-divisible-subset
0416-partition-equal-subset-sum
0435-non-overlapping-intervals
0448-find-all-numbers-disappeared-in-an-array
0455-assign-cookies
0462-minimum-moves-to-equal-array-elements-ii
0485-max-consecutive-ones
0496-next-greater-element-i
0503-next-greater-element-ii
0506-relative-ranks
0518-coin-change-ii
0540-single-element-in-a-sorted-array
0542-01-matrix
0560-subarray-sum-equals-k
0721-accounts-merge
0735-asteroid-collision
0778-swim-in-rising-water
0792-binary-search
0825-max-increase-to-keep-city-skyline
0827-making-a-large-island
0875-longest-mountain-in-array
0876-hand-of-straights
0890-lemonade-change
0907-koko-eating-bananas
0940-fruit-into-baskets
0943-sum-of-subarray-minimums
0966-binary-subarrays-with-sum
0967-minimum-falling-path-sum
1034-subarrays-with-k-different-integers
1036-rotting-oranges
1046-max-consecutive-ones-iii
1048-longest-string-chain
1050-construct-binary-search-tree-from-preorder-traversal
1056-capacity-to-ship-packages-within-d-days
1129-longest-string-chain
1171-shortest-path-in-binary-matrix
1370-count-number-of-nice-subarrays
1402-count-square-submatrices-with-all-ones
1408-find-the-smallest-divisor-given-a-threshold
1538-maximum-points-you-can-obtain-from-cards
1559-cherry-pickup-ii
1586-longest-subarray-of-1s-after-deleting-one-element
1605-minimum-number-of-days-to-make-m-bouquets
1628-count-submatrices-with-all-ones
1646-kth-missing-positive-number
1700-minimum-time-to-make-rope-colorful
1753-path-with-minimum-effort
1813-maximum-erasure-value
1825-find-minimum-time-to-finish-all-jobs
1878-check-if-array-is-sorted-and-rotated
1895-minimum-number-of-operations-to-move-all-balls-to-each-box
2047-find-a-peak-element-ii
2108-minimize-the-difference-between-target-and-chosen-elements
2227-sum-of-subarray-ranges
2229-maximum-fruits-harvested-after-at-most-k-steps
2271-rearrange-array-elements-by-sign
2400-minimum-score-after-removals-on-a-tree
2432-number-of-zero-filled-subarrays
2449-maximum-number-of-robots-within-budget
2465-shifting-letters-ii
2529-range-product-queries-of-powers
2689-rearranging-fruits
3278-find-the-number-of-ways-to-place-people-i
3454-minimum-operations-to-make-array-equal-to-target
3459-find-the-minimum-area-to-cover-all-ones-ii
3461-find-the-minimum-area-to-cover-all-ones-i
3514-shortest-distance-after-road-addition-queries-ii
3648-find-the-maximum-number-of-fruits-collected
3733-length-of-longest-v-shaped-diagonal-segment
3748-sort-matrix-by-diagonals
3788-maximum-unique-subarray-sum-after-deletion
3790-fruits-into-baskets-ii
3791-fruits-into-baskets-iii

Two Pointers

0005-longest-palindromic-substring
0011-container-with-most-water
0015-3sum
0018-4sum
0031-next-permutation
0042-trapping-rain-water
0061-rotate-list
0075-sort-colors
0080-remove-duplicates-from-sorted-array-ii
0082-remove-duplicates-from-sorted-list-ii
0086-partition-list
0088-merge-sorted-array
0141-linked-list-cycle
0142-linked-list-cycle-ii
0148-sort-list
0151-reverse-words-in-a-string
0160-intersection-of-two-linked-lists
0167-two-sum-ii-input-array-is-sorted
0189-rotate-array
0202-happy-number
0234-palindrome-linked-list
0283-move-zeroes
0345-reverse-vowels-of-a-string
0349-intersection-of-two-arrays
0350-intersection-of-two-arrays-ii
0455-assign-cookies
0647-palindromic-substrings
0653-two-sum-iv-input-is-a-bst
0777-swap-adjacent-in-lr-string
0875-longest-mountain-in-array
0908-middle-of-the-linked-list
1048-longest-string-chain
1129-longest-string-chain
1850-minimum-length-of-string-after-deleting-similar-ends
2216-delete-the-middle-node-of-a-linked-list
2271-rearrange-array-elements-by-sign

Binary Search

0004-median-of-two-sorted-arrays
0033-search-in-rotated-sorted-array
0034-find-first-and-last-position-of-element-in-sorted-array
0035-search-insert-position
0074-search-a-2d-matrix
0081-search-in-rotated-sorted-array-ii
0153-find-minimum-in-rotated-sorted-array
0162-find-peak-element
0167-two-sum-ii-input-array-is-sorted
0222-count-complete-tree-nodes
0240-search-a-2d-matrix-ii
0278-first-bad-version
0300-longest-increasing-subsequence
0349-intersection-of-two-arrays
0350-intersection-of-two-arrays-ii
0354-russian-doll-envelopes
0367-valid-perfect-square
0441-arranging-coins
0540-single-element-in-a-sorted-array
0778-swim-in-rising-water
0792-binary-search
0907-koko-eating-bananas
1046-max-consecutive-ones-iii
1056-capacity-to-ship-packages-within-d-days
1408-find-the-smallest-divisor-given-a-threshold
1605-minimum-number-of-days-to-make-m-bouquets
1646-kth-missing-positive-number
1753-path-with-minimum-effort
2047-find-a-peak-element-ii
2229-maximum-fruits-harvested-after-at-most-k-steps
2449-maximum-number-of-robots-within-budget
3790-fruits-into-baskets-ii
3791-fruits-into-baskets-iii

Hash Table

0003-longest-substring-without-repeating-characters
0012-integer-to-roman
0013-roman-to-integer
0017-letter-combinations-of-a-phone-number
0030-substring-with-concatenation-of-all-words
0036-valid-sudoku
0037-sudoku-solver
0041-first-missing-positive
0073-set-matrix-zeroes
0076-minimum-window-substring
0105-construct-binary-tree-from-preorder-and-inorder-traversal
0106-construct-binary-tree-from-inorder-and-postorder-traversal
0127-word-ladder
0128-longest-consecutive-sequence
0138-copy-list-with-random-pointer
0139-word-break
0141-linked-list-cycle
0142-linked-list-cycle-ii
0146-lru-cache
0160-intersection-of-two-linked-lists
0169-majority-element
0202-happy-number
0229-majority-element-ii
0242-valid-anagram
0290-word-pattern
0347-top-k-frequent-elements
0349-intersection-of-two-arrays
0350-intersection-of-two-arrays-ii
0383-ransom-note
0387-first-unique-character-in-a-string
0409-longest-palindrome
0424-longest-repeating-character-replacement
0448-find-all-numbers-disappeared-in-an-array
0451-sort-characters-by-frequency
0496-next-greater-element-i
0560-subarray-sum-equals-k
0653-two-sum-iv-input-is-a-bst
0721-accounts-merge
0863-all-nodes-distance-k-in-binary-tree
0876-hand-of-straights
0893-all-nodes-distance-k-in-binary-tree
0900-reordered-power-of-2
0940-fruit-into-baskets
0966-binary-subarrays-with-sum
0984-most-stones-removed-with-same-row-or-column
0987-vertical-order-traversal-of-a-binary-tree
1029-vertical-order-traversal-of-a-binary-tree
1034-subarrays-with-k-different-integers
1048-longest-string-chain
1129-longest-string-chain
1370-count-number-of-nice-subarrays
1460-number-of-substrings-containing-all-three-characters
1813-maximum-erasure-value
2689-rearranging-fruits
3210-count-beautiful-substrings-i
3788-maximum-unique-subarray-sum-after-deletion

Math

0002-add-two-numbers
0012-integer-to-roman
0013-roman-to-integer
0043-multiply-strings
0050-powx-n
0060-permutation-sequence
0062-unique-paths
0089-gray-code
0096-unique-binary-search-trees
0171-excel-sheet-column-number
0189-rotate-array
0202-happy-number
0231-power-of-two
0326-power-of-three
0342-power-of-four
0367-valid-perfect-square
0368-largest-divisible-subset
0415-add-strings
0441-arranging-coins
0462-minimum-moves-to-equal-array-elements-ii
0492-construct-the-rectangle
0826-soup-servings
0867-new-21-game
0900-reordered-power-of-2
0942-super-palindromes
1146-greatest-common-divisor-of-strings
1370-count-number-of-nice-subarrays
1448-maximum-69-number
1515-find-the-minimum-number-of-fibonacci-numbers-whose-sum-is-k
2032-largest-odd-number-in-string
2278-find-three-consecutive-integers-that-sum-to-a-given-number
2432-number-of-zero-filled-subarrays
3210-count-beautiful-substrings-i
3278-find-the-number-of-ways-to-place-people-i
3279-alice-and-bob-playing-flower-game
3830-find-closest-person

String

0003-longest-substring-without-repeating-characters
0005-longest-palindromic-substring
0006-zigzag-conversion
0008-string-to-integer-atoi
0012-integer-to-roman
0013-roman-to-integer
0014-longest-common-prefix
0017-letter-combinations-of-a-phone-number
0020-valid-parentheses
0022-generate-parentheses
0030-substring-with-concatenation-of-all-words
0038-count-and-say
0043-multiply-strings
0071-simplify-path
0072-edit-distance
0076-minimum-window-substring
0093-restore-ip-addresses
0127-word-ladder
0139-word-break
0151-reverse-words-in-a-string
0171-excel-sheet-column-number
0242-valid-anagram
0290-word-pattern
0297-serialize-and-deserialize-binary-tree
0345-reverse-vowels-of-a-string
0383-ransom-note
0387-first-unique-character-in-a-string
0402-remove-k-digits
0409-longest-palindrome
0415-add-strings
0424-longest-repeating-character-replacement
0434-number-of-segments-in-a-string
0451-sort-characters-by-frequency
0459-repeated-substring-pattern
0482-license-key-formatting
0647-palindromic-substrings
0678-valid-parenthesis-string
0721-accounts-merge
0777-swap-adjacent-in-lr-string
0812-rotate-string
0942-super-palindromes
0957-minimum-add-to-make-parentheses-valid
1048-longest-string-chain
1078-remove-outermost-parentheses
1129-longest-string-chain
1146-greatest-common-divisor-of-strings
1250-longest-common-subsequence
1302-delete-characters-to-make-fancy-string
1460-number-of-substrings-containing-all-three-characters
1517-restore-the-array
1700-minimum-time-to-make-rope-colorful
1850-minimum-length-of-string-after-deleting-similar-ends
1895-minimum-number-of-operations-to-move-all-balls-to-each-box
2032-largest-odd-number-in-string
2286-minimum-time-to-remove-all-cars-containing-illegal-goods
2346-largest-3-same-digit-number-in-string
2465-shifting-letters-ii
3210-count-beautiful-substrings-i

Enumeration

0875-longest-mountain-in-array
0900-reordered-power-of-2
0942-super-palindromes
3210-count-beautiful-substrings-i
3278-find-the-number-of-ways-to-place-people-i
3459-find-the-minimum-area-to-cover-all-ones-ii

Number Theory

3210-count-beautiful-substrings-i

Prefix Sum

0303-range-sum-query-immutable
0560-subarray-sum-equals-k
0966-binary-subarrays-with-sum
1046-max-consecutive-ones-iii
1370-count-number-of-nice-subarrays
1538-maximum-points-you-can-obtain-from-cards
1895-minimum-number-of-operations-to-move-all-balls-to-each-box
2229-maximum-fruits-harvested-after-at-most-k-steps
2449-maximum-number-of-robots-within-budget
2465-shifting-letters-ii
2529-range-product-queries-of-powers
3210-count-beautiful-substrings-i

Sorting

0015-3sum
0018-4sum
0056-merge-intervals
0075-sort-colors
0088-merge-sorted-array
0148-sort-list
0169-majority-element
0215-kth-largest-element-in-an-array
0229-majority-element-ii
0242-valid-anagram
0347-top-k-frequent-elements
0349-intersection-of-two-arrays
0350-intersection-of-two-arrays-ii
0354-russian-doll-envelopes
0368-largest-divisible-subset
0435-non-overlapping-intervals
0451-sort-characters-by-frequency
0455-assign-cookies
0462-minimum-moves-to-equal-array-elements-ii
0506-relative-ranks
0721-accounts-merge
0876-hand-of-straights
0900-reordered-power-of-2
0987-vertical-order-traversal-of-a-binary-tree
1029-vertical-order-traversal-of-a-binary-tree
1048-longest-string-chain
1129-longest-string-chain
1613-find-critical-and-pseudo-critical-edges-in-minimum-spanning-tree
2689-rearranging-fruits
3278-find-the-number-of-ways-to-place-people-i
3748-sort-matrix-by-diagonals

Dynamic Programming

0005-longest-palindromic-substring
0022-generate-parentheses
0042-trapping-rain-water
0045-jump-game-ii
0053-maximum-subarray
0055-jump-game
0062-unique-paths
0063-unique-paths-ii
0064-minimum-path-sum
0072-edit-distance
0085-maximal-rectangle
0095-unique-binary-search-trees-ii
0096-unique-binary-search-trees
0118-pascals-triangle
0119-pascals-triangle-ii
0120-triangle
0121-best-time-to-buy-and-sell-stock
0122-best-time-to-buy-and-sell-stock-ii
0124-binary-tree-maximum-path-sum
0139-word-break
0152-maximum-product-subarray
0198-house-robber
0213-house-robber-ii
0300-longest-increasing-subsequence
0322-coin-change
0329-longest-increasing-path-in-a-matrix
0338-counting-bits
0354-russian-doll-envelopes
0368-largest-divisible-subset
0416-partition-equal-subset-sum
0435-non-overlapping-intervals
0518-coin-change-ii
0542-01-matrix
0647-palindromic-substrings
0678-valid-parenthesis-string
0826-soup-servings
0867-new-21-game
0875-longest-mountain-in-array
0943-sum-of-subarray-minimums
0967-minimum-falling-path-sum
1048-longest-string-chain
1129-longest-string-chain
1250-longest-common-subsequence
1398-number-of-ways-to-stay-in-the-same-place-after-some-steps
1402-count-square-submatrices-with-all-ones
1456-find-the-city-with-the-smallest-number-of-neighbors-at-a-threshold-distance
1517-restore-the-array
1559-cherry-pickup-ii
1586-longest-subarray-of-1s-after-deleting-one-element
1628-count-submatrices-with-all-ones
1700-minimum-time-to-make-rope-colorful
1825-find-minimum-time-to-finish-all-jobs
2090-number-of-ways-to-arrive-at-destination
2108-minimize-the-difference-between-target-and-chosen-elements
2286-minimum-time-to-remove-all-cars-containing-illegal-goods
2882-ways-to-express-an-integer-as-sum-of-powers
3454-minimum-operations-to-make-array-equal-to-target
3648-find-the-maximum-number-of-fruits-collected
3733-length-of-longest-v-shaped-diagonal-segment

Backtracking

0017-letter-combinations-of-a-phone-number
0022-generate-parentheses
0037-sudoku-solver
0046-permutations
0051-n-queens
0052-n-queens-ii
0077-combinations
0078-subsets
0089-gray-code
0090-subsets-ii
0093-restore-ip-addresses
0095-unique-binary-search-trees-ii
0113-path-sum-ii
0216-combination-sum-iii
1825-find-minimum-time-to-finish-all-jobs

Greedy

0011-container-with-most-water
0045-jump-game-ii
0055-jump-game
0122-best-time-to-buy-and-sell-stock-ii
0134-gas-station
0135-candy
0402-remove-k-digits
0409-longest-palindrome
0435-non-overlapping-intervals
0455-assign-cookies
0678-valid-parenthesis-string
0825-max-increase-to-keep-city-skyline
0876-hand-of-straights
0890-lemonade-change
0957-minimum-add-to-make-parentheses-valid
1448-maximum-69-number
1515-find-the-minimum-number-of-fibonacci-numbers-whose-sum-is-k
1700-minimum-time-to-make-rope-colorful
2032-largest-odd-number-in-string
2689-rearranging-fruits
3454-minimum-operations-to-make-array-equal-to-target
3514-shortest-distance-after-road-addition-queries-ii
3788-maximum-unique-subarray-sum-after-deletion

Linked List

0002-add-two-numbers
0023-merge-k-sorted-lists
0024-swap-nodes-in-pairs
0025-reverse-nodes-in-k-group
0061-rotate-list
0082-remove-duplicates-from-sorted-list-ii
0086-partition-list
0092-reverse-linked-list-ii
0114-flatten-binary-tree-to-linked-list
0117-populating-next-right-pointers-in-each-node-ii
0138-copy-list-with-random-pointer
0141-linked-list-cycle
0142-linked-list-cycle-ii
0146-lru-cache
0148-sort-list
0160-intersection-of-two-linked-lists
0206-reverse-linked-list
0234-palindrome-linked-list
0328-odd-even-linked-list
0908-middle-of-the-linked-list
2196-reverse-nodes-in-even-length-groups
2216-delete-the-middle-node-of-a-linked-list

Combinatorics

0062-unique-paths

Matrix

0036-valid-sudoku
0037-sudoku-solver
0054-spiral-matrix
0059-spiral-matrix-ii
0063-unique-paths-ii
0064-minimum-path-sum
0073-set-matrix-zeroes
0074-search-a-2d-matrix
0085-maximal-rectangle
0130-surrounded-regions
0200-number-of-islands
0240-search-a-2d-matrix-ii
0329-longest-increasing-path-in-a-matrix
0542-01-matrix
0778-swim-in-rising-water
0825-max-increase-to-keep-city-skyline
0827-making-a-large-island
0967-minimum-falling-path-sum
1036-rotting-oranges
1171-shortest-path-in-binary-matrix
1402-count-square-submatrices-with-all-ones
1559-cherry-pickup-ii
1628-count-submatrices-with-all-ones
1753-path-with-minimum-effort
2047-find-a-peak-element-ii
2108-minimize-the-difference-between-target-and-chosen-elements
3459-find-the-minimum-area-to-cover-all-ones-ii
3461-find-the-minimum-area-to-cover-all-ones-i
3648-find-the-maximum-number-of-fruits-collected
3733-length-of-longest-v-shaped-diagonal-segment
3748-sort-matrix-by-diagonals

Simulation

0043-multiply-strings
0054-spiral-matrix
0059-spiral-matrix-ii
0415-add-strings
0735-asteroid-collision
2271-rearrange-array-elements-by-sign
2278-find-three-consecutive-integers-that-sum-to-a-given-number
3790-fruits-into-baskets-ii

Divide and Conquer

0004-median-of-two-sorted-arrays
0023-merge-k-sorted-lists
0053-maximum-subarray
0105-construct-binary-tree-from-preorder-and-inorder-traversal
0106-construct-binary-tree-from-inorder-and-postorder-traversal
0108-convert-sorted-array-to-binary-search-tree
0148-sort-list
0169-majority-element
0190-reverse-bits
0191-number-of-1-bits
0215-kth-largest-element-in-an-array
0218-the-skyline-problem
0240-search-a-2d-matrix-ii
0347-top-k-frequent-elements

Tree

0094-binary-tree-inorder-traversal
0095-unique-binary-search-trees-ii
0096-unique-binary-search-trees
0098-validate-binary-search-tree
0099-recover-binary-search-tree
0100-same-tree
0101-symmetric-tree
0102-binary-tree-level-order-traversal
0105-construct-binary-tree-from-preorder-and-inorder-traversal
0106-construct-binary-tree-from-inorder-and-postorder-traversal
0108-convert-sorted-array-to-binary-search-tree
0110-balanced-binary-tree
0113-path-sum-ii
0114-flatten-binary-tree-to-linked-list
0117-populating-next-right-pointers-in-each-node-ii
0124-binary-tree-maximum-path-sum
0144-binary-tree-preorder-traversal
0173-binary-search-tree-iterator
0199-binary-tree-right-side-view
0222-count-complete-tree-nodes
0230-kth-smallest-element-in-a-bst
0235-lowest-common-ancestor-of-a-binary-search-tree
0236-lowest-common-ancestor-of-a-binary-tree
0297-serialize-and-deserialize-binary-tree
0450-delete-node-in-a-bst
0543-diameter-of-binary-tree
0572-subtree-of-another-tree
0653-two-sum-iv-input-is-a-bst
0662-maximum-width-of-binary-tree
0783-search-in-a-binary-search-tree
0784-insert-into-a-binary-search-tree
0863-all-nodes-distance-k-in-binary-tree
0893-all-nodes-distance-k-in-binary-tree
0987-vertical-order-traversal-of-a-binary-tree
1029-vertical-order-traversal-of-a-binary-tree
1050-construct-binary-search-tree-from-preorder-traversal
2400-minimum-score-after-removals-on-a-tree

Binary Search Tree

0095-unique-binary-search-trees-ii
0096-unique-binary-search-trees
0098-validate-binary-search-tree
0099-recover-binary-search-tree
0108-convert-sorted-array-to-binary-search-tree
0173-binary-search-tree-iterator
0230-kth-smallest-element-in-a-bst
0235-lowest-common-ancestor-of-a-binary-search-tree
0450-delete-node-in-a-bst
0653-two-sum-iv-input-is-a-bst
0783-search-in-a-binary-search-tree
0784-insert-into-a-binary-search-tree
1050-construct-binary-search-tree-from-preorder-traversal

Binary Tree

0094-binary-tree-inorder-traversal
0095-unique-binary-search-trees-ii
0096-unique-binary-search-trees
0098-validate-binary-search-tree
0099-recover-binary-search-tree
0100-same-tree
0101-symmetric-tree
0102-binary-tree-level-order-traversal
0105-construct-binary-tree-from-preorder-and-inorder-traversal
0106-construct-binary-tree-from-inorder-and-postorder-traversal
0108-convert-sorted-array-to-binary-search-tree
0110-balanced-binary-tree
0113-path-sum-ii
0114-flatten-binary-tree-to-linked-list
0117-populating-next-right-pointers-in-each-node-ii
0124-binary-tree-maximum-path-sum
0144-binary-tree-preorder-traversal
0173-binary-search-tree-iterator
0199-binary-tree-right-side-view
0222-count-complete-tree-nodes
0230-kth-smallest-element-in-a-bst
0235-lowest-common-ancestor-of-a-binary-search-tree
0236-lowest-common-ancestor-of-a-binary-tree
0297-serialize-and-deserialize-binary-tree
0450-delete-node-in-a-bst
0543-diameter-of-binary-tree
0572-subtree-of-another-tree
0653-two-sum-iv-input-is-a-bst
0662-maximum-width-of-binary-tree
0783-search-in-a-binary-search-tree
0784-insert-into-a-binary-search-tree
0863-all-nodes-distance-k-in-binary-tree
0893-all-nodes-distance-k-in-binary-tree
0987-vertical-order-traversal-of-a-binary-tree
1029-vertical-order-traversal-of-a-binary-tree
1050-construct-binary-search-tree-from-preorder-traversal

Depth-First Search

0094-binary-tree-inorder-traversal
0098-validate-binary-search-tree
0099-recover-binary-search-tree
0100-same-tree
0101-symmetric-tree
0110-balanced-binary-tree
0113-path-sum-ii
0114-flatten-binary-tree-to-linked-list
0117-populating-next-right-pointers-in-each-node-ii
0124-binary-tree-maximum-path-sum
0130-surrounded-regions
0144-binary-tree-preorder-traversal
0199-binary-tree-right-side-view
0200-number-of-islands
0210-course-schedule-ii
0230-kth-smallest-element-in-a-bst
0235-lowest-common-ancestor-of-a-binary-search-tree
0236-lowest-common-ancestor-of-a-binary-tree
0297-serialize-and-deserialize-binary-tree
0310-minimum-height-trees
0329-longest-increasing-path-in-a-matrix
0543-diameter-of-binary-tree
0547-number-of-provinces
0572-subtree-of-another-tree
0653-two-sum-iv-input-is-a-bst
0662-maximum-width-of-binary-tree
0684-redundant-connection
0721-accounts-merge
0778-swim-in-rising-water
0801-is-graph-bipartite
0820-find-eventual-safe-states
0827-making-a-large-island
0863-all-nodes-distance-k-in-binary-tree
0893-all-nodes-distance-k-in-binary-tree
0984-most-stones-removed-with-same-row-or-column
0987-vertical-order-traversal-of-a-binary-tree
1029-vertical-order-traversal-of-a-binary-tree
1300-critical-connections-in-a-network
1753-path-with-minimum-effort
2400-minimum-score-after-removals-on-a-tree
2438-find-closest-node-to-given-two-nodes

Stack

0020-valid-parentheses
0042-trapping-rain-water
0071-simplify-path
0084-largest-rectangle-in-histogram
0085-maximal-rectangle
0094-binary-tree-inorder-traversal
0114-flatten-binary-tree-to-linked-list
0144-binary-tree-preorder-traversal
0155-min-stack
0173-binary-search-tree-iterator
0225-implement-stack-using-queues
0232-implement-queue-using-stacks
0234-palindrome-linked-list
0402-remove-k-digits
0496-next-greater-element-i
0503-next-greater-element-ii
0678-valid-parenthesis-string
0735-asteroid-collision
0937-online-stock-span
0943-sum-of-subarray-minimums
0957-minimum-add-to-make-parentheses-valid
1050-construct-binary-search-tree-from-preorder-traversal
1078-remove-outermost-parentheses
1628-count-submatrices-with-all-ones
2227-sum-of-subarray-ranges
3454-minimum-operations-to-make-array-equal-to-target

Design

0146-lru-cache
0155-min-stack
0173-binary-search-tree-iterator
0225-implement-stack-using-queues
0232-implement-queue-using-stacks
0297-serialize-and-deserialize-binary-tree
0303-range-sum-query-immutable
0937-online-stock-span

Queue

0225-implement-stack-using-queues
0232-implement-queue-using-stacks
0239-sliding-window-maximum
0387-first-unique-character-in-a-string
2449-maximum-number-of-robots-within-budget

Bit Manipulation

0078-subsets
0089-gray-code
0090-subsets-ii
0136-single-number
0190-reverse-bits
0191-number-of-1-bits
0222-count-complete-tree-nodes
0231-power-of-two
0260-single-number-iii
0338-counting-bits
0342-power-of-four
0461-hamming-distance
0476-number-complement
1825-find-minimum-time-to-finish-all-jobs
2400-minimum-score-after-removals-on-a-tree
2529-range-product-queries-of-powers

Recursion

0002-add-two-numbers
0024-swap-nodes-in-pairs
0025-reverse-nodes-in-k-group
0050-powx-n
0060-permutation-sequence
0206-reverse-linked-list
0231-power-of-two
0234-palindrome-linked-list
0326-power-of-three
0342-power-of-four

Interactive

0278-first-bad-version

Counting

0169-majority-element
0229-majority-element-ii
0347-top-k-frequent-elements
0383-ransom-note
0387-first-unique-character-in-a-string
0451-sort-characters-by-frequency
0900-reordered-power-of-2
1034-subarrays-with-k-different-integers

Heap (Priority Queue)

0023-merge-k-sorted-lists
0215-kth-largest-element-in-an-array
0218-the-skyline-problem
0239-sliding-window-maximum
0347-top-k-frequent-elements
0451-sort-characters-by-frequency
0506-relative-ranks
0778-swim-in-rising-water
1753-path-with-minimum-effort
2449-maximum-number-of-robots-within-budget

String Matching

0459-repeated-substring-pattern
0572-subtree-of-another-tree
0812-rotate-string

Monotonic Stack

0042-trapping-rain-water
0084-largest-rectangle-in-histogram
0085-maximal-rectangle
0402-remove-k-digits
0496-next-greater-element-i
0503-next-greater-element-ii
0937-online-stock-span
0943-sum-of-subarray-minimums
1050-construct-binary-search-tree-from-preorder-traversal
1628-count-submatrices-with-all-ones
2227-sum-of-subarray-ranges
3454-minimum-operations-to-make-array-equal-to-target

Sliding Window

0003-longest-substring-without-repeating-characters
0030-substring-with-concatenation-of-all-words
0076-minimum-window-substring
0239-sliding-window-maximum
0424-longest-repeating-character-replacement
0867-new-21-game
0940-fruit-into-baskets
0966-binary-subarrays-with-sum
1034-subarrays-with-k-different-integers
1046-max-consecutive-ones-iii
1370-count-number-of-nice-subarrays
1460-number-of-substrings-containing-all-three-characters
1538-maximum-points-you-can-obtain-from-cards
1586-longest-subarray-of-1s-after-deleting-one-element
1813-maximum-erasure-value
2229-maximum-fruits-harvested-after-at-most-k-steps
2449-maximum-number-of-robots-within-budget

Trie

0014-longest-common-prefix
0139-word-break

Merge Sort

0023-merge-k-sorted-lists
0148-sort-list

Iterator

0173-binary-search-tree-iterator

Breadth-First Search

0100-same-tree
0101-symmetric-tree
0102-binary-tree-level-order-traversal
0117-populating-next-right-pointers-in-each-node-ii
0127-word-ladder
0130-surrounded-regions
0199-binary-tree-right-side-view
0200-number-of-islands
0210-course-schedule-ii
0297-serialize-and-deserialize-binary-tree
0310-minimum-height-trees
0322-coin-change
0329-longest-increasing-path-in-a-matrix
0542-01-matrix
0547-number-of-provinces
0653-two-sum-iv-input-is-a-bst
0662-maximum-width-of-binary-tree
0684-redundant-connection
0721-accounts-merge
0778-swim-in-rising-water
0801-is-graph-bipartite
0820-find-eventual-safe-states
0827-making-a-large-island
0863-all-nodes-distance-k-in-binary-tree
0893-all-nodes-distance-k-in-binary-tree
0987-vertical-order-traversal-of-a-binary-tree
1029-vertical-order-traversal-of-a-binary-tree
1036-rotting-oranges
1171-shortest-path-in-binary-matrix
1753-path-with-minimum-effort

Monotonic Queue

0239-sliding-window-maximum
2449-maximum-number-of-robots-within-budget

Data Stream

0937-online-stock-span

Graph

0210-course-schedule-ii
0310-minimum-height-trees
0329-longest-increasing-path-in-a-matrix
0547-number-of-provinces
0684-redundant-connection
0801-is-graph-bipartite
0820-find-eventual-safe-states
0984-most-stones-removed-with-same-row-or-column
1300-critical-connections-in-a-network
1456-find-the-city-with-the-smallest-number-of-neighbors-at-a-threshold-distance
1613-find-critical-and-pseudo-critical-edges-in-minimum-spanning-tree
2090-number-of-ways-to-arrive-at-destination
2438-find-closest-node-to-given-two-nodes
3514-shortest-distance-after-road-addition-queries-ii

Bucket Sort

0347-top-k-frequent-elements
0451-sort-characters-by-frequency

Union Find

0128-longest-consecutive-sequence
0130-surrounded-regions
0200-number-of-islands
0547-number-of-provinces
0684-redundant-connection
0721-accounts-merge
0778-swim-in-rising-water
0801-is-graph-bipartite
0827-making-a-large-island
0984-most-stones-removed-with-same-row-or-column
1613-find-critical-and-pseudo-critical-edges-in-minimum-spanning-tree
1753-path-with-minimum-effort

Topological Sort

0210-course-schedule-ii
0310-minimum-height-trees
0329-longest-increasing-path-in-a-matrix
0820-find-eventual-safe-states
2090-number-of-ways-to-arrive-at-destination

Shortest Path

1456-find-the-city-with-the-smallest-number-of-neighbors-at-a-threshold-distance
2090-number-of-ways-to-arrive-at-destination

Biconnected Component

1300-critical-connections-in-a-network

Minimum Spanning Tree

1613-find-critical-and-pseudo-critical-edges-in-minimum-spanning-tree

Strongly Connected Component

1613-find-critical-and-pseudo-critical-edges-in-minimum-spanning-tree

Memoization

0139-word-break
0329-longest-increasing-path-in-a-matrix
3733-length-of-longest-v-shaped-diagonal-segment

Quickselect

0215-kth-largest-element-in-an-array
0347-top-k-frequent-elements

Binary Indexed Tree

0218-the-skyline-problem

Segment Tree

0218-the-skyline-problem
3790-fruits-into-baskets-ii
3791-fruits-into-baskets-iii

Line Sweep

0218-the-skyline-problem

Ordered Set

0218-the-skyline-problem
3514-shortest-distance-after-road-addition-queries-ii
3790-fruits-into-baskets-ii
3791-fruits-into-baskets-iii

Probability and Statistics

0826-soup-servings
0867-new-21-game

Bitmask

1825-find-minimum-time-to-finish-all-jobs

Hash Function

0572-subtree-of-another-tree

Geometry

3278-find-the-number-of-ways-to-place-people-i

Doubly-Linked List

0146-lru-cache

About

A repository to store all the solved LeetCode questions

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors