Skip to content

Latest commit

 

History

1,268 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A collection of LeetCode questions I have solved recently!

LeetCode Topics

Linked List

0002-add-two-numbers
0019-remove-nth-node-from-end-of-list
0021-merge-two-sorted-lists
0023-merge-k-sorted-lists
0025-reverse-nodes-in-k-group
0061-rotate-list
0114-flatten-binary-tree-to-linked-list
0138-copy-list-with-random-pointer
0141-linked-list-cycle
0142-linked-list-cycle-ii
0143-reorder-list
0146-lru-cache
0148-sort-list
0203-remove-linked-list-elements
0206-reverse-linked-list
0355-design-twitter
1582-design-browser-history
2216-delete-the-middle-node-of-a-linked-list

Two Pointers

0005-longest-palindromic-substring
0011-container-with-most-water
0015-3sum
0019-remove-nth-node-from-end-of-list
0042-trapping-rain-water
0061-rotate-list
0125-valid-palindrome
0141-linked-list-cycle
0142-linked-list-cycle-ii
0143-reorder-list
0148-sort-list
0167-two-sum-ii-input-array-is-sorted
0253-meeting-rooms-ii
0287-find-the-duplicate-number
0295-find-median-from-data-stream
0455-assign-cookies
0567-permutation-in-string
0647-palindromic-substrings
0653-two-sum-iv-input-is-a-bst
0658-find-k-closest-elements
0768-partition-labels
2216-delete-the-middle-node-of-a-linked-list

Hash Table

0001-two-sum
0003-longest-substring-without-repeating-characters
0017-letter-combinations-of-a-phone-number
0036-valid-sudoku
0037-sudoku-solver
0049-group-anagrams
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
0133-clone-graph
0138-copy-list-with-random-pointer
0139-word-break
0141-linked-list-cycle
0142-linked-list-cycle-ii
0146-lru-cache
0217-contains-duplicate
0242-valid-anagram
0347-top-k-frequent-elements
0355-design-twitter
0424-longest-repeating-character-replacement
0567-permutation-in-string
0621-task-scheduler
0653-two-sum-iv-input-is-a-bst
0721-accounts-merge
0768-partition-labels
0876-hand-of-straights
0893-all-nodes-distance-k-in-binary-tree
0984-most-stones-removed-with-same-row-or-column
1023-time-based-key-value-store
1029-vertical-order-traversal-of-a-binary-tree
2461-amount-of-time-for-binary-tree-to-be-infected

Recursion

0002-add-two-numbers
0021-merge-two-sorted-lists
0025-reverse-nodes-in-k-group
0044-wildcard-matching
0060-permutation-sequence
0143-reorder-list
0203-remove-linked-list-elements
0206-reverse-linked-list

Array

0001-two-sum
0004-median-of-two-sorted-arrays
0011-container-with-most-water
0015-3sum
0033-search-in-rotated-sorted-array
0036-valid-sudoku
0037-sudoku-solver
0039-combination-sum
0040-combination-sum-ii
0042-trapping-rain-water
0045-jump-game-ii
0046-permutations
0049-group-anagrams
0051-n-queens
0053-maximum-subarray
0055-jump-game
0056-merge-intervals
0057-insert-interval
0063-unique-paths-ii
0064-minimum-path-sum
0074-search-a-2d-matrix
0078-subsets
0079-word-search
0084-largest-rectangle-in-histogram
0090-subsets-ii
0105-construct-binary-tree-from-preorder-and-inorder-traversal
0106-construct-binary-tree-from-inorder-and-postorder-traversal
0120-triangle
0121-best-time-to-buy-and-sell-stock
0122-best-time-to-buy-and-sell-stock-ii
0123-best-time-to-buy-and-sell-stock-iii
0128-longest-consecutive-sequence
0130-surrounded-regions
0134-gas-station
0135-candy
0139-word-break
0152-maximum-product-subarray
0167-two-sum-ii-input-array-is-sorted
0188-best-time-to-buy-and-sell-stock-iv
0198-house-robber
0200-number-of-islands
0213-house-robber-ii
0215-kth-largest-element-in-an-array
0217-contains-duplicate
0238-product-of-array-except-self
0239-sliding-window-maximum
0252-meeting-rooms
0253-meeting-rooms-ii
0286-walls-and-gates
0287-find-the-duplicate-number
0300-longest-increasing-subsequence
0309-best-time-to-buy-and-sell-stock-with-cooldown
0322-coin-change
0347-top-k-frequent-elements
0368-largest-divisible-subset
0416-partition-equal-subset-sum
0417-pacific-atlantic-water-flow
0435-non-overlapping-intervals
0455-assign-cookies
0494-target-sum
0518-coin-change-ii
0542-01-matrix
0621-task-scheduler
0658-find-k-closest-elements
0695-max-area-of-island
0714-best-time-to-buy-and-sell-stock-with-transaction-fee
0718-maximum-length-of-repeated-subarray
0721-accounts-merge
0733-flood-fill
0739-daily-temperatures
0747-min-cost-climbing-stairs
0792-binary-search
0794-swim-in-rising-water
0854-making-a-large-island
0876-hand-of-straights
0890-lemonade-change
0907-koko-eating-bananas
0967-minimum-falling-path-sum
1014-k-closest-points-to-origin
1036-rotting-oranges
1050-construct-binary-search-tree-from-preorder-traversal
1073-number-of-enclaves
1127-last-stone-weight
1171-shortest-path-in-binary-matrix
1559-cherry-pickup-ii
1582-design-browser-history
1706-min-cost-to-connect-all-points
1753-path-with-minimum-effort
1829-maximum-units-on-a-truck
1977-minimum-interval-to-include-each-query
2026-merge-triplets-to-form-target-triplet

Binary Search

0004-median-of-two-sorted-arrays
0033-search-in-rotated-sorted-array
0074-search-a-2d-matrix
0167-two-sum-ii-input-array-is-sorted
0222-count-complete-tree-nodes
0287-find-the-duplicate-number
0300-longest-increasing-subsequence
0658-find-k-closest-elements
0718-maximum-length-of-repeated-subarray
0792-binary-search
0794-swim-in-rising-water
0907-koko-eating-bananas
1023-time-based-key-value-store
1753-path-with-minimum-effort
1977-minimum-interval-to-include-each-query

Bit Manipulation

0078-subsets
0090-subsets-ii
0222-count-complete-tree-nodes
0287-find-the-duplicate-number

Stack

0020-valid-parentheses
0042-trapping-rain-water
0084-largest-rectangle-in-histogram
0114-flatten-binary-tree-to-linked-list
0143-reorder-list
0155-min-stack
0173-binary-search-tree-iterator
0678-valid-parenthesis-string
0739-daily-temperatures
1050-construct-binary-search-tree-from-preorder-traversal
1582-design-browser-history

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
0148-sort-list
0215-kth-largest-element-in-an-array
0347-top-k-frequent-elements
1014-k-closest-points-to-origin

Heap (Priority Queue)

0023-merge-k-sorted-lists
0215-kth-largest-element-in-an-array
0239-sliding-window-maximum
0253-meeting-rooms-ii
0295-find-median-from-data-stream
0347-top-k-frequent-elements
0355-design-twitter
0621-task-scheduler
0658-find-k-closest-elements
0744-network-delay-time
0789-kth-largest-element-in-a-stream
0794-swim-in-rising-water
0803-cheapest-flights-within-k-stops
1014-k-closest-points-to-origin
1127-last-stone-weight
1753-path-with-minimum-effort
1977-minimum-interval-to-include-each-query

Merge Sort

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

Sorting

0015-3sum
0049-group-anagrams
0056-merge-intervals
0148-sort-list
0215-kth-largest-element-in-an-array
0217-contains-duplicate
0242-valid-anagram
0252-meeting-rooms
0253-meeting-rooms-ii
0295-find-median-from-data-stream
0347-top-k-frequent-elements
0368-largest-divisible-subset
0435-non-overlapping-intervals
0455-assign-cookies
0621-task-scheduler
0658-find-k-closest-elements
0721-accounts-merge
0876-hand-of-straights
1014-k-closest-points-to-origin
1029-vertical-order-traversal-of-a-binary-tree
1829-maximum-units-on-a-truck
1977-minimum-interval-to-include-each-query

Design

0146-lru-cache
0155-min-stack
0173-binary-search-tree-iterator
0295-find-median-from-data-stream
0297-serialize-and-deserialize-binary-tree
0355-design-twitter
0789-kth-largest-element-in-a-stream
1023-time-based-key-value-store
1582-design-browser-history

Doubly-Linked List

0146-lru-cache
1582-design-browser-history

Data Stream

0295-find-median-from-data-stream
0789-kth-largest-element-in-a-stream
1582-design-browser-history

Tree

0098-validate-binary-search-tree
0099-recover-binary-search-tree
0100-same-tree
0101-symmetric-tree
0102-binary-tree-level-order-traversal
0103-binary-tree-zigzag-level-order-traversal
0104-maximum-depth-of-binary-tree
0105-construct-binary-tree-from-preorder-and-inorder-traversal
0106-construct-binary-tree-from-inorder-and-postorder-traversal
0110-balanced-binary-tree
0114-flatten-binary-tree-to-linked-list
0124-binary-tree-maximum-path-sum
0173-binary-search-tree-iterator
0199-binary-tree-right-side-view
0222-count-complete-tree-nodes
0226-invert-binary-tree
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
0789-kth-largest-element-in-a-stream
0893-all-nodes-distance-k-in-binary-tree
1029-vertical-order-traversal-of-a-binary-tree
1050-construct-binary-search-tree-from-preorder-traversal
1544-count-good-nodes-in-binary-tree
2384-root-equals-sum-of-children
2461-amount-of-time-for-binary-tree-to-be-infected

Breadth-First Search

0100-same-tree
0101-symmetric-tree
0102-binary-tree-level-order-traversal
0103-binary-tree-zigzag-level-order-traversal
0104-maximum-depth-of-binary-tree
0127-word-ladder
0130-surrounded-regions
0133-clone-graph
0199-binary-tree-right-side-view
0200-number-of-islands
0207-course-schedule
0210-course-schedule-ii
0226-invert-binary-tree
0286-walls-and-gates
0297-serialize-and-deserialize-binary-tree
0322-coin-change
0417-pacific-atlantic-water-flow
0542-01-matrix
0547-number-of-provinces
0653-two-sum-iv-input-is-a-bst
0662-maximum-width-of-binary-tree
0684-redundant-connection
0695-max-area-of-island
0721-accounts-merge
0733-flood-fill
0744-network-delay-time
0794-swim-in-rising-water
0801-is-graph-bipartite
0803-cheapest-flights-within-k-stops
0820-find-eventual-safe-states
0854-making-a-large-island
0893-all-nodes-distance-k-in-binary-tree
1029-vertical-order-traversal-of-a-binary-tree
1036-rotting-oranges
1073-number-of-enclaves
1171-shortest-path-in-binary-matrix
1442-number-of-operations-to-make-network-connected
1544-count-good-nodes-in-binary-tree
1753-path-with-minimum-effort
2461-amount-of-time-for-binary-tree-to-be-infected

Binary Tree

0098-validate-binary-search-tree
0099-recover-binary-search-tree
0100-same-tree
0101-symmetric-tree
0102-binary-tree-level-order-traversal
0103-binary-tree-zigzag-level-order-traversal
0104-maximum-depth-of-binary-tree
0105-construct-binary-tree-from-preorder-and-inorder-traversal
0106-construct-binary-tree-from-inorder-and-postorder-traversal
0110-balanced-binary-tree
0114-flatten-binary-tree-to-linked-list
0124-binary-tree-maximum-path-sum
0173-binary-search-tree-iterator
0199-binary-tree-right-side-view
0222-count-complete-tree-nodes
0226-invert-binary-tree
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
0789-kth-largest-element-in-a-stream
0893-all-nodes-distance-k-in-binary-tree
1029-vertical-order-traversal-of-a-binary-tree
1050-construct-binary-search-tree-from-preorder-traversal
1544-count-good-nodes-in-binary-tree
2384-root-equals-sum-of-children
2461-amount-of-time-for-binary-tree-to-be-infected

Depth-First Search

0079-word-search
0098-validate-binary-search-tree
0099-recover-binary-search-tree
0100-same-tree
0101-symmetric-tree
0104-maximum-depth-of-binary-tree
0110-balanced-binary-tree
0114-flatten-binary-tree-to-linked-list
0124-binary-tree-maximum-path-sum
0130-surrounded-regions
0133-clone-graph
0199-binary-tree-right-side-view
0200-number-of-islands
0207-course-schedule
0210-course-schedule-ii
0226-invert-binary-tree
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
0417-pacific-atlantic-water-flow
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
0695-max-area-of-island
0721-accounts-merge
0733-flood-fill
0744-network-delay-time
0794-swim-in-rising-water
0801-is-graph-bipartite
0803-cheapest-flights-within-k-stops
0820-find-eventual-safe-states
0854-making-a-large-island
0893-all-nodes-distance-k-in-binary-tree
0984-most-stones-removed-with-same-row-or-column
1029-vertical-order-traversal-of-a-binary-tree
1073-number-of-enclaves
1300-critical-connections-in-a-network
1442-number-of-operations-to-make-network-connected
1544-count-good-nodes-in-binary-tree
1753-path-with-minimum-effort
2461-amount-of-time-for-binary-tree-to-be-infected

Dynamic Programming

0005-longest-palindromic-substring
0022-generate-parentheses
0042-trapping-rain-water
0044-wildcard-matching
0045-jump-game-ii
0053-maximum-subarray
0055-jump-game
0062-unique-paths
0063-unique-paths-ii
0064-minimum-path-sum
0070-climbing-stairs
0072-edit-distance
0091-decode-ways
0115-distinct-subsequences
0120-triangle
0121-best-time-to-buy-and-sell-stock
0122-best-time-to-buy-and-sell-stock-ii
0123-best-time-to-buy-and-sell-stock-iii
0124-binary-tree-maximum-path-sum
0131-palindrome-partitioning
0139-word-break
0152-maximum-product-subarray
0188-best-time-to-buy-and-sell-stock-iv
0198-house-robber
0213-house-robber-ii
0300-longest-increasing-subsequence
0309-best-time-to-buy-and-sell-stock-with-cooldown
0322-coin-change
0368-largest-divisible-subset
0416-partition-equal-subset-sum
0435-non-overlapping-intervals
0494-target-sum
0516-longest-palindromic-subsequence
0518-coin-change-ii
0542-01-matrix
0583-delete-operation-for-two-strings
0647-palindromic-substrings
0678-valid-parenthesis-string
0714-best-time-to-buy-and-sell-stock-with-transaction-fee
0718-maximum-length-of-repeated-subarray
0747-min-cost-climbing-stairs
0803-cheapest-flights-within-k-stops
0967-minimum-falling-path-sum
1170-shortest-common-supersequence
1250-longest-common-subsequence
1437-minimum-insertion-steps-to-make-a-string-palindrome
1456-find-the-city-with-the-smallest-number-of-neighbors-at-a-threshold-distance
1559-cherry-pickup-ii
2090-number-of-ways-to-arrive-at-destination

String Matching

0003-longest-substring-without-repeating-characters
0005-longest-palindromic-substring
0017-letter-combinations-of-a-phone-number
0020-valid-parentheses
0022-generate-parentheses
0044-wildcard-matching
0049-group-anagrams
0072-edit-distance
0076-minimum-window-substring
0079-word-search
0091-decode-ways
0115-distinct-subsequences
0125-valid-palindrome
0127-word-ladder
0131-palindrome-partitioning
0139-word-break
0242-valid-anagram
0297-serialize-and-deserialize-binary-tree
0424-longest-repeating-character-replacement
0516-longest-palindromic-subsequence
0567-permutation-in-string
0572-subtree-of-another-tree
0583-delete-operation-for-two-strings
0647-palindromic-substrings
0678-valid-parenthesis-string
0721-accounts-merge
0768-partition-labels
1023-time-based-key-value-store
1119-robot-bounded-in-circle
1170-shortest-common-supersequence
1250-longest-common-subsequence
1437-minimum-insertion-steps-to-make-a-string-palindrome

Hash Function

0572-subtree-of-another-tree
0718-maximum-length-of-repeated-subarray

Binary Search Tree

0098-validate-binary-search-tree
0099-recover-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
0789-kth-largest-element-in-a-stream
1050-construct-binary-search-tree-from-preorder-traversal

Monotonic Stack

0042-trapping-rain-water
0084-largest-rectangle-in-histogram
0739-daily-temperatures
1050-construct-binary-search-tree-from-preorder-traversal

Iterator

0173-binary-search-tree-iterator

Backtracking

0017-letter-combinations-of-a-phone-number
0022-generate-parentheses
0037-sudoku-solver
0039-combination-sum
0040-combination-sum-ii
0046-permutations
0051-n-queens
0078-subsets
0079-word-search
0090-subsets-ii
0131-palindrome-partitioning
0494-target-sum

Matrix

0036-valid-sudoku
0037-sudoku-solver
0063-unique-paths-ii
0064-minimum-path-sum
0074-search-a-2d-matrix
0079-word-search
0130-surrounded-regions
0200-number-of-islands
0286-walls-and-gates
0417-pacific-atlantic-water-flow
0542-01-matrix
0695-max-area-of-island
0733-flood-fill
0794-swim-in-rising-water
0854-making-a-large-island
0967-minimum-falling-path-sum
1036-rotting-oranges
1073-number-of-enclaves
1171-shortest-path-in-binary-matrix
1559-cherry-pickup-ii
1753-path-with-minimum-effort

Math

0002-add-two-numbers
0060-permutation-sequence
0062-unique-paths
0070-climbing-stairs
0368-largest-divisible-subset
1014-k-closest-points-to-origin
1119-robot-bounded-in-circle

Quickselect

0215-kth-largest-element-in-an-array
0347-top-k-frequent-elements
1014-k-closest-points-to-origin

Bucket Sort

0347-top-k-frequent-elements

Counting

0347-top-k-frequent-elements
0621-task-scheduler

Sliding Window

0003-longest-substring-without-repeating-characters
0076-minimum-window-substring
0239-sliding-window-maximum
0424-longest-repeating-character-replacement
0567-permutation-in-string
0658-find-k-closest-elements
0718-maximum-length-of-repeated-subarray

Geometry

1014-k-closest-points-to-origin

Greedy

0011-container-with-most-water
0044-wildcard-matching
0045-jump-game-ii
0055-jump-game
0122-best-time-to-buy-and-sell-stock-ii
0134-gas-station
0135-candy
0253-meeting-rooms-ii
0435-non-overlapping-intervals
0455-assign-cookies
0621-task-scheduler
0678-valid-parenthesis-string
0714-best-time-to-buy-and-sell-stock-with-transaction-fee
0768-partition-labels
0876-hand-of-straights
0890-lemonade-change
1829-maximum-units-on-a-truck
2026-merge-triplets-to-form-target-triplet

Line Sweep

1977-minimum-interval-to-include-each-query

Union Find

0128-longest-consecutive-sequence
0130-surrounded-regions
0200-number-of-islands
0547-number-of-provinces
0684-redundant-connection
0695-max-area-of-island
0721-accounts-merge
0794-swim-in-rising-water
0801-is-graph-bipartite
0854-making-a-large-island
0984-most-stones-removed-with-same-row-or-column
1073-number-of-enclaves
1442-number-of-operations-to-make-network-connected
1706-min-cost-to-connect-all-points
1753-path-with-minimum-effort

Graph

0133-clone-graph
0207-course-schedule
0210-course-schedule-ii
0547-number-of-provinces
0684-redundant-connection
0744-network-delay-time
0801-is-graph-bipartite
0803-cheapest-flights-within-k-stops
0820-find-eventual-safe-states
0984-most-stones-removed-with-same-row-or-column
1300-critical-connections-in-a-network
1442-number-of-operations-to-make-network-connected
1456-find-the-city-with-the-smallest-number-of-neighbors-at-a-threshold-distance
1706-min-cost-to-connect-all-points
2090-number-of-ways-to-arrive-at-destination

Topological Sort

0207-course-schedule
0210-course-schedule-ii
0820-find-eventual-safe-states
2090-number-of-ways-to-arrive-at-destination

Shortest Path

0744-network-delay-time
0803-cheapest-flights-within-k-stops
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

1706-min-cost-to-connect-all-points

Memoization

0070-climbing-stairs
0139-word-break

Combinatorics

0062-unique-paths

Rolling Hash

0718-maximum-length-of-repeated-subarray

Prefix Sum

0238-product-of-array-except-self
0253-meeting-rooms-ii

Queue

0239-sliding-window-maximum

Monotonic Queue

0239-sliding-window-maximum

Trie

0139-word-break

Simulation

1119-robot-bounded-in-circle

About

This repository contains the code of my Leetcode problems.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages