Skip to content

Latest commit

 

History

History
350 lines (349 loc) · 38.2 KB

File metadata and controls

350 lines (349 loc) · 38.2 KB

leet_4_Code

My Leetcode problem solution in C++

LeetCode Topics

String

Problem Name Difficulty
0049-group-anagrams Medium
0125-valid-palindrome Easy
0131-palindrome-partitioning Medium
0132-palindrome-partitioning-ii Hard
0316-remove-duplicate-letters Medium
0680-valid-palindrome-ii Easy
1081-smallest-subsequence-of-distinct-characters Medium
1358-number-of-substrings-containing-all-three-characters Medium
1967-number-of-strings-that-appear-as-substrings-in-word Easy
3014-minimum-number-of-pushes-to-type-word-i Easy
3016-minimum-number-of-pushes-to-type-word-ii Medium
3499-maximize-active-section-with-trade-i Medium
3501-maximize-active-section-with-trade-ii Hard
3517-smallest-palindromic-rearrangement-i Medium
3518-smallest-palindromic-rearrangement-ii Hard
3756-concatenate-non-zero-digits-and-multiply-by-sum-ii Medium

Dynamic Programming

Problem Name Difficulty
0131-palindrome-partitioning Medium
0132-palindrome-partitioning-ii Hard
1301-number-of-paths-with-max-score Hard
3336-find-the-number-of-subsequences-with-equal-gcd Hard
3534-path-existence-queries-in-a-graph-ii Hard
3620-network-recovery-pathways Hard
3699-number-of-zigzag-arrays-i Hard
3700-number-of-zigzag-arrays-ii Hard

Backtracking

Problem Name Difficulty
0039-combination-sum Medium
0040-combination-sum-ii Medium
0113-path-sum-ii Medium
0131-palindrome-partitioning Medium

Array

Problem Name Difficulty
0001-two-sum Easy
0015-3sum Medium
0034-find-first-and-last-position-of-element-in-sorted-array Medium
0039-combination-sum Medium
0040-combination-sum-ii Medium
0049-group-anagrams Medium
0084-largest-rectangle-in-histogram Hard
0105-construct-binary-tree-from-preorder-and-inorder-traversal Medium
0128-longest-consecutive-sequence Medium
0150-evaluate-reverse-polish-notation Medium
0167-two-sum-ii-input-array-is-sorted Medium
0238-product-of-array-except-self Medium
0347-top-k-frequent-elements Medium
0628-maximum-product-of-three-numbers Easy
0739-daily-temperatures Medium
0875-koko-eating-bananas Medium
1011-capacity-to-ship-packages-within-d-days Medium
1110-delete-nodes-and-return-forest Medium
1260-shift-2d-grid Easy
1288-remove-covered-intervals Medium
1301-number-of-paths-with-max-score Hard
1464-maximum-product-of-two-elements-in-an-array Easy
1846-maximum-element-after-decreasing-and-rearranging Medium
1967-number-of-strings-that-appear-as-substrings-in-word Easy
1979-find-greatest-common-divisor-of-array Easy
2447-number-of-subarrays-with-gcd-equal-to-k Medium
2812-find-the-safest-path-in-a-grid Medium
3020-find-the-maximum-number-of-elements-in-subset Medium
3286-find-a-safe-walk-through-a-grid Medium
3312-sorted-gcd-pair-queries Hard
3336-find-the-number-of-subsequences-with-equal-gcd Hard
3501-maximize-active-section-with-trade-ii Hard
3513-number-of-unique-xor-triplets-i Medium
3514-number-of-unique-xor-triplets-ii Medium
3534-path-existence-queries-in-a-graph-ii Hard
3620-network-recovery-pathways Hard
3737-count-subarrays-with-majority-element-i Medium
3739-count-subarrays-with-majority-element-ii Hard
3867-sum-of-gcd-of-formed-pairs Medium

Hash Table

Problem Name Difficulty
0001-two-sum Easy
0049-group-anagrams Medium
0105-construct-binary-tree-from-preorder-and-inorder-traversal Medium
0128-longest-consecutive-sequence Medium
0347-top-k-frequent-elements Medium
1110-delete-nodes-and-return-forest Medium
1358-number-of-substrings-containing-all-three-characters Medium
3016-minimum-number-of-pushes-to-type-word-ii Medium
3020-find-the-maximum-number-of-elements-in-subset Medium
3312-sorted-gcd-pair-queries Hard
3518-smallest-palindromic-rearrangement-ii Hard
3737-count-subarrays-with-majority-element-i Medium
3739-count-subarrays-with-majority-element-ii Hard

Prefix Sum

Problem Name Difficulty
0238-product-of-array-except-self Medium
3312-sorted-gcd-pair-queries Hard
3699-number-of-zigzag-arrays-i Hard
3737-count-subarrays-with-majority-element-i Medium
3739-count-subarrays-with-majority-element-ii Hard
3756-concatenate-non-zero-digits-and-multiply-by-sum-ii Medium

Sorting

Problem Name Difficulty
0015-3sum Medium
0049-group-anagrams Medium
0347-top-k-frequent-elements Medium
0628-maximum-product-of-three-numbers Easy
1288-remove-covered-intervals Medium
1464-maximum-product-of-two-elements-in-an-array Easy
1846-maximum-element-after-decreasing-and-rearranging Medium
3016-minimum-number-of-pushes-to-type-word-ii Medium
3517-smallest-palindromic-rearrangement-i Medium
3534-path-existence-queries-in-a-graph-ii Hard
3536-maximum-product-of-two-digits Easy
3867-sum-of-gcd-of-formed-pairs Medium

Divide and Conquer

Problem Name Difficulty
0105-construct-binary-tree-from-preorder-and-inorder-traversal Medium
0347-top-k-frequent-elements Medium
3737-count-subarrays-with-majority-element-i Medium
3739-count-subarrays-with-majority-element-ii Hard

Heap (Priority Queue)

Problem Name Difficulty
0347-top-k-frequent-elements Medium
1464-maximum-product-of-two-elements-in-an-array Easy
2812-find-the-safest-path-in-a-grid Medium
3286-find-a-safe-walk-through-a-grid Medium
3620-network-recovery-pathways Hard

Bucket Sort

Problem Name Difficulty
0347-top-k-frequent-elements Medium

Counting

Problem Name Difficulty
0347-top-k-frequent-elements Medium
3016-minimum-number-of-pushes-to-type-word-ii Medium
3312-sorted-gcd-pair-queries Hard
3518-smallest-palindromic-rearrangement-ii Hard
3737-count-subarrays-with-majority-element-i Medium

Quickselect

Problem Name Difficulty
0347-top-k-frequent-elements Medium

Math

Problem Name Difficulty
0150-evaluate-reverse-polish-notation Medium
0628-maximum-product-of-three-numbers Easy
1979-find-greatest-common-divisor-of-array Easy
2447-number-of-subarrays-with-gcd-equal-to-k Medium
3014-minimum-number-of-pushes-to-type-word-i Easy
3312-sorted-gcd-pair-queries Hard
3336-find-the-number-of-subsequences-with-equal-gcd Hard
3513-number-of-unique-xor-triplets-i Medium
3514-number-of-unique-xor-triplets-ii Medium
3518-smallest-palindromic-rearrangement-ii Hard
3536-maximum-product-of-two-digits Easy
3700-number-of-zigzag-arrays-ii Hard
3754-concatenate-non-zero-digits-and-multiply-by-sum-i Easy
3756-concatenate-non-zero-digits-and-multiply-by-sum-ii Medium
3867-sum-of-gcd-of-formed-pairs Medium

Segment Tree

Problem Name Difficulty
3501-maximize-active-section-with-trade-ii Hard
3737-count-subarrays-with-majority-element-i Medium
3739-count-subarrays-with-majority-element-ii Hard

Merge Sort

Problem Name Difficulty
3737-count-subarrays-with-majority-element-i Medium
3739-count-subarrays-with-majority-element-ii Hard

Enumeration

Problem Name Difficulty
3020-find-the-maximum-number-of-elements-in-subset Medium
3499-maximize-active-section-with-trade-i Medium
3514-number-of-unique-xor-triplets-ii Medium

Greedy

Problem Name Difficulty
0316-remove-duplicate-letters Medium
0680-valid-palindrome-ii Easy
1081-smallest-subsequence-of-distinct-characters Medium
1846-maximum-element-after-decreasing-and-rearranging Medium
3014-minimum-number-of-pushes-to-type-word-i Easy
3016-minimum-number-of-pushes-to-type-word-ii Medium
3534-path-existence-queries-in-a-graph-ii Hard

Union-Find

Problem Name Difficulty
0128-longest-consecutive-sequence Medium
2492-minimum-score-of-a-path-between-two-cities Medium
2685-count-the-number-of-complete-components Medium
2812-find-the-safest-path-in-a-grid Medium

Two Pointers

Problem Name Difficulty
0015-3sum Medium
0125-valid-palindrome Easy
0167-two-sum-ii-input-array-is-sorted Medium
0680-valid-palindrome-ii Easy
3534-path-existence-queries-in-a-graph-ii Hard
3867-sum-of-gcd-of-formed-pairs Medium

Binary Search

Problem Name Difficulty
0034-find-first-and-last-position-of-element-in-sorted-array Medium
0167-two-sum-ii-input-array-is-sorted Medium
0875-koko-eating-bananas Medium
1011-capacity-to-ship-packages-within-d-days Medium
2812-find-the-safest-path-in-a-grid Medium
3312-sorted-gcd-pair-queries Hard
3501-maximize-active-section-with-trade-ii Hard
3534-path-existence-queries-in-a-graph-ii Hard
3620-network-recovery-pathways Hard

Sliding Window

Problem Name Difficulty
1358-number-of-substrings-containing-all-three-characters Medium

Breadth-First Search

Problem Name Difficulty
0112-path-sum Easy
0199-binary-tree-right-side-view Medium
0958-check-completeness-of-a-binary-tree Medium
2492-minimum-score-of-a-path-between-two-cities Medium
2685-count-the-number-of-complete-components Medium
2812-find-the-safest-path-in-a-grid Medium
3286-find-a-safe-walk-through-a-grid Medium

Matrix

Problem Name Difficulty
1260-shift-2d-grid Easy
1301-number-of-paths-with-max-score Hard
2812-find-the-safest-path-in-a-grid Medium
3286-find-a-safe-walk-through-a-grid Medium

Tree

Problem Name Difficulty
0105-construct-binary-tree-from-preorder-and-inorder-traversal Medium
0112-path-sum Easy
0113-path-sum-ii Medium
0199-binary-tree-right-side-view Medium
0236-lowest-common-ancestor-of-a-binary-tree Medium
0814-binary-tree-pruning Medium
0958-check-completeness-of-a-binary-tree Medium
1110-delete-nodes-and-return-forest Medium

Depth-First Search

Problem Name Difficulty
0112-path-sum Easy
0113-path-sum-ii Medium
0199-binary-tree-right-side-view Medium
0236-lowest-common-ancestor-of-a-binary-tree Medium
0814-binary-tree-pruning Medium
1110-delete-nodes-and-return-forest Medium
2492-minimum-score-of-a-path-between-two-cities Medium
2685-count-the-number-of-complete-components Medium

Binary Tree

Problem Name Difficulty
0105-construct-binary-tree-from-preorder-and-inorder-traversal Medium
0112-path-sum Easy
0113-path-sum-ii Medium
0199-binary-tree-right-side-view Medium
0236-lowest-common-ancestor-of-a-binary-tree Medium
0814-binary-tree-pruning Medium
0958-check-completeness-of-a-binary-tree Medium
1110-delete-nodes-and-return-forest Medium

Graph Theory

Problem Name Difficulty
2492-minimum-score-of-a-path-between-two-cities Medium
2685-count-the-number-of-complete-components Medium
3286-find-a-safe-walk-through-a-grid Medium
3534-path-existence-queries-in-a-graph-ii Hard
3620-network-recovery-pathways Hard

Shortest Path

Problem Name Difficulty
3286-find-a-safe-walk-through-a-grid Medium
3620-network-recovery-pathways Hard

Database

Problem Name Difficulty
0177-nth-highest-salary Medium
0620-not-boring-movies Easy
0627-swap-sex-of-employees Easy
1050-actors-and-directors-who-cooperated-at-least-three-times Easy

Topological Sort

Problem Name Difficulty
3620-network-recovery-pathways Hard

Bit Manipulation

Problem Name Difficulty
3513-number-of-unique-xor-triplets-i Medium
3514-number-of-unique-xor-triplets-ii Medium
3534-path-existence-queries-in-a-graph-ii Hard

Number Theory

Problem Name Difficulty
1979-find-greatest-common-divisor-of-array Easy
2447-number-of-subarrays-with-gcd-equal-to-k Medium
3312-sorted-gcd-pair-queries Hard
3336-find-the-number-of-subsequences-with-equal-gcd Hard
3867-sum-of-gcd-of-formed-pairs Medium

Stack

Problem Name Difficulty
0084-largest-rectangle-in-histogram Hard
0150-evaluate-reverse-polish-notation Medium
0316-remove-duplicate-letters Medium
0739-daily-temperatures Medium
1081-smallest-subsequence-of-distinct-characters Medium

Simulation

Problem Name Difficulty
1260-shift-2d-grid Easy
3867-sum-of-gcd-of-formed-pairs Medium

Monotonic Stack

Problem Name Difficulty
0084-largest-rectangle-in-histogram Hard
0316-remove-duplicate-letters Medium
0739-daily-temperatures Medium
1081-smallest-subsequence-of-distinct-characters Medium

Combinatorics

Problem Name Difficulty
3312-sorted-gcd-pair-queries Hard
3518-smallest-palindromic-rearrangement-ii Hard

Counting Sort

Problem Name Difficulty
3517-smallest-palindromic-rearrangement-i Medium