/leetcode

My leetcode profile

Primary LanguageC++

Leetcode

The project is to record my leetcode solutions and my thinking process.

Interview Reminder

REACTO rule:

  1. Repeat
  2. Example
  3. Action
  4. Code
  5. Optimization

LeetCode Topics

Array

0015-3sum
0039-combination-sum
0045-jump-game-ii
0046-permutations
0057-insert-interval
0073-set-matrix-zeroes
0078-subsets
0134-gas-station
0198-house-robber
0494-target-sum
0542-01-matrix
0560-subarray-sum-equals-k
0721-accounts-merge
0733-flood-fill
0860-design-circular-queue
1400-find-winner-on-a-tic-tac-toe-game
1706-min-cost-to-connect-all-points
1977-minimum-interval-to-include-each-query
2139-detect-squares

Dynamic Programming

0045-jump-game-ii
0198-house-robber
0494-target-sum
0542-01-matrix

Backtracking

0039-combination-sum
0046-permutations
0078-subsets
0113-path-sum-ii
0494-target-sum

Greedy

0045-jump-game-ii
0134-gas-station
0778-reorganize-string

Hash Table

0003-longest-substring-without-repeating-characters
0073-set-matrix-zeroes
0133-clone-graph
0146-lru-cache
0160-intersection-of-two-linked-lists
0560-subarray-sum-equals-k
0721-accounts-merge
0778-reorganize-string
1297-maximum-number-of-balloons
1400-find-winner-on-a-tic-tac-toe-game
2139-detect-squares
2406-decode-the-message

Matrix

0073-set-matrix-zeroes
0542-01-matrix
0733-flood-fill
1400-find-winner-on-a-tic-tac-toe-game

Simulation

0043-multiply-strings
1400-find-winner-on-a-tic-tac-toe-game

Two Pointers

0015-3sum
0160-intersection-of-two-linked-lists

Sorting

0015-3sum
0721-accounts-merge
0778-reorganize-string
1977-minimum-interval-to-include-each-query

String

0003-longest-substring-without-repeating-characters
0043-multiply-strings
0227-basic-calculator-ii
0449-serialize-and-deserialize-bst
0721-accounts-merge
0778-reorganize-string
1297-maximum-number-of-balloons
2406-decode-the-message

Counting

0778-reorganize-string
1297-maximum-number-of-balloons
2139-detect-squares

Linked List

0025-reverse-nodes-in-k-group
0146-lru-cache
0160-intersection-of-two-linked-lists
0860-design-circular-queue

Prefix Sum

0560-subarray-sum-equals-k

Heap (Priority Queue)

0778-reorganize-string
1977-minimum-interval-to-include-each-query

Math

0043-multiply-strings
0227-basic-calculator-ii

Stack

0227-basic-calculator-ii

Recursion

0025-reverse-nodes-in-k-group

Tree

0101-symmetric-tree
0113-path-sum-ii
0226-invert-binary-tree
0437-path-sum-iii
0449-serialize-and-deserialize-bst

Depth-First Search

0101-symmetric-tree
0113-path-sum-ii
0133-clone-graph
0207-course-schedule
0226-invert-binary-tree
0437-path-sum-iii
0449-serialize-and-deserialize-bst
0721-accounts-merge
0733-flood-fill

Breadth-First Search

0101-symmetric-tree
0133-clone-graph
0207-course-schedule
0226-invert-binary-tree
0449-serialize-and-deserialize-bst
0542-01-matrix
0721-accounts-merge
0733-flood-fill

Design

0146-lru-cache
0449-serialize-and-deserialize-bst
0860-design-circular-queue
2139-detect-squares

Binary Search Tree

0278-first-bad-version
0449-serialize-and-deserialize-bst
1977-minimum-interval-to-include-each-query

Binary Tree

0101-symmetric-tree
0113-path-sum-ii
0226-invert-binary-tree
0437-path-sum-iii
0449-serialize-and-deserialize-bst

Queue

0860-design-circular-queue

Graph

0133-clone-graph
0207-course-schedule
1706-min-cost-to-connect-all-points
1738-maximal-network-rank

Sliding Window

0003-longest-substring-without-repeating-characters

Doubly-Linked List

0146-lru-cache

Union Find

0721-accounts-merge
1706-min-cost-to-connect-all-points

Minimum Spanning Tree

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

Line Sweep

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

Topological Sort

0207-course-schedule

Bit Manipulation

0078-subsets

Interactive

0278-first-bad-version