Skip to content

BahiHabash/LeetCode

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,801 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LeetCode questions that I've solved.

LeetCode Topics

Linked List

Problem Name Difficulty
0019-remove-nth-node-from-end-of-list
0021-merge-two-sorted-lists
0024-swap-nodes-in-pairs
0061-rotate-list
0083-remove-duplicates-from-sorted-list
0092-reverse-linked-list-ii
0117-populating-next-right-pointers-in-each-node-ii Medium
0138-copy-list-with-random-pointer Medium
0141-linked-list-cycle
0206-reverse-linked-list
0355-design-twitter
0816-design-hashset
0817-design-hashmap
1797-design-authentication-manager Medium

Recursion

Problem Name Difficulty
0021-merge-two-sorted-lists
0024-swap-nodes-in-pairs
0206-reverse-linked-list
3600-find-the-k-th-character-in-string-game-i

Two Pointers

Problem Name Difficulty
0011-container-with-most-water
0019-remove-nth-node-from-end-of-list
0061-rotate-list
0075-sort-colors
0088-merge-sorted-array
0141-linked-list-cycle
0189-rotate-array
0202-happy-number
0611-valid-triangle-number
0768-partition-labels
0868-push-dominoes
2265-partition-array-according-to-given-pivot
2320-find-all-k-distant-indices-in-an-array
2392-successful-pairs-of-spells-and-potions
2481-strictly-palindromic-number
2551-apply-operations-to-an-array
2707-merge-two-2d-arrays-by-summing-values
3683-find-the-lexicographically-largest-string-from-the-box-i

Tree

Problem Name Difficulty
0117-populating-next-right-pointers-in-each-node-ii Medium
0226-invert-binary-tree
0515-find-largest-value-in-each-tree-row
1218-lowest-common-ancestor-of-deepest-leaves
1387-find-elements-in-a-contaminated-binary-tree
1544-count-good-nodes-in-binary-tree
2384-root-equals-sum-of-children
2461-amount-of-time-for-binary-tree-to-be-infected
2558-minimum-number-of-operations-to-sort-a-binary-tree-by-level

Depth-First Search

Problem Name Difficulty
0117-populating-next-right-pointers-in-each-node-ii Medium
0226-invert-binary-tree
0386-lexicographical-numbers
0515-find-largest-value-in-each-tree-row
0733-flood-fill
1218-lowest-common-ancestor-of-deepest-leaves
1387-find-elements-in-a-contaminated-binary-tree
1428-jump-game-iii
1544-count-good-nodes-in-binary-tree
1663-detect-cycles-in-2d-grid
2461-amount-of-time-for-binary-tree-to-be-infected

Breadth-First Search

Problem Name Difficulty
0117-populating-next-right-pointers-in-each-node-ii Medium
0226-invert-binary-tree
0515-find-largest-value-in-each-tree-row
0733-flood-fill
1218-lowest-common-ancestor-of-deepest-leaves
1387-find-elements-in-a-contaminated-binary-tree
1428-jump-game-iii
1544-count-good-nodes-in-binary-tree
1663-detect-cycles-in-2d-grid
2461-amount-of-time-for-binary-tree-to-be-infected
2558-minimum-number-of-operations-to-sort-a-binary-tree-by-level

Binary Tree

Problem Name Difficulty
0117-populating-next-right-pointers-in-each-node-ii Medium
0226-invert-binary-tree
0515-find-largest-value-in-each-tree-row
1218-lowest-common-ancestor-of-deepest-leaves
1387-find-elements-in-a-contaminated-binary-tree
1544-count-good-nodes-in-binary-tree
2384-root-equals-sum-of-children
2461-amount-of-time-for-binary-tree-to-be-infected
2558-minimum-number-of-operations-to-sort-a-binary-tree-by-level

Hash Table

Problem Name Difficulty
0001-two-sum Easy
0041-first-missing-positive Hard
0073-set-matrix-zeroes
0138-copy-list-with-random-pointer Medium
0141-linked-list-cycle
0169-majority-element Easy
0202-happy-number
0290-word-pattern
0355-design-twitter
0768-partition-labels
0797-rabbits-in-forest
0816-design-hashset
0817-design-hashmap
0940-fruit-into-baskets
0952-word-subsets
1218-lowest-common-ancestor-of-deepest-leaves
1227-number-of-equivalent-domino-pairs
1364-tuple-with-same-product
1387-find-elements-in-a-contaminated-binary-tree
1500-count-largest-group
1502-construct-k-palindrome-strings
1510-find-lucky-integer-in-an-array
1797-design-authentication-manager Medium
1915-check-if-one-string-swap-can-make-strings-equal
1995-finding-pairs-with-a-certain-sum
2059-unique-length-3-palindromic-subsequences
2204-find-subsequence-of-length-k-with-the-largest-sum
2215-finding-3-digit-even-numbers
2285-design-bitset
2428-equal-row-and-column-pairs
2461-amount-of-time-for-binary-tree-to-be-infected
2473-max-sum-of-a-pair-with-equal-sum-of-digits
2685-first-completely-painted-row-or-column
2707-merge-two-2d-arrays-by-summing-values
2856-count-complete-subarrays-in-an-array
3227-find-missing-and-repeated-values
3455-minimum-length-of-string-after-operations
3621-minimum-operations-to-make-array-values-equal-to-k
3629-total-characters-in-string-after-transformations-i
3656-minimum-number-of-operations-to-make-elements-in-array-distinct
3741-minimum-distance-between-three-equal-elements-ii Medium
3754-maximum-manhattan-distance-after-k-changes

String

Problem Name Difficulty
0020-valid-parentheses Easy
0038-count-and-say
0290-word-pattern
0768-partition-labels
0868-push-dominoes
0952-word-subsets
1058-lexicographically-smallest-equivalent-string
1502-construct-k-palindrome-strings
1537-maximum-score-after-splitting-a-string
1689-partitioning-into-minimum-number-of-deci-binary-numbers Medium
1895-minimum-number-of-operations-to-move-all-balls-to-each-box
1915-check-if-one-string-swap-can-make-strings-equal
2021-remove-all-occurrences-of-a-substring
2059-unique-length-3-palindromic-subsequences
2221-check-if-a-parentheses-string-can-be-valid
2260-divide-a-string-into-groups-of-size-k
2285-design-bitset
2292-counting-words-with-a-given-prefix
2452-words-within-two-edits-of-dictionary Medium
2463-minimum-recolors-to-get-k-consecutive-black-blocks
2465-shifting-letters-ii
2691-count-vowel-strings-in-ranges
3143-longest-unequal-adjacent-groups-subsequence-i
3194-find-words-containing-character
3309-count-prefix-and-suffix-pairs-i
3447-clear-digits
3455-minimum-length-of-string-after-operations
3612-process-string-with-special-operations-i Medium
3617-find-the-original-typed-string-i
3629-total-characters-in-string-after-transformations-i
3683-find-the-lexicographically-largest-string-from-the-box-i
3754-maximum-manhattan-distance-after-k-changes

Prefix Sum

Problem Name Difficulty
1477-product-of-the-last-k-numbers
1537-maximum-score-after-splitting-a-string
1732-find-the-highest-altitude Easy
1895-minimum-number-of-operations-to-move-all-balls-to-each-box
2059-unique-length-3-palindromic-subsequences
2145-grid-game
2249-count-the-hidden-sequences
2358-number-of-ways-to-split-array
2394-count-subarrays-with-score-less-than-k
2465-shifting-letters-ii
2691-count-vowel-strings-in-ranges
3383-taking-maximum-energy-from-the-mystic-dungeon
3639-zero-array-transformation-i

Array

Problem Name Difficulty
0001-two-sum Easy
0011-container-with-most-water
0041-first-missing-positive Hard
0066-plus-one
0073-set-matrix-zeroes
0075-sort-colors
0088-merge-sorted-array
0118-pascals-triangle
0169-majority-element Easy
0189-rotate-array
0611-valid-triangle-number
0733-flood-fill
0797-rabbits-in-forest
0816-design-hashset
0817-design-hashmap
0940-fruit-into-baskets
0952-word-subsets
1049-minimum-domino-rotations-for-equal-row
1227-number-of-equivalent-domino-pairs
1293-three-consecutive-odds
1364-tuple-with-same-product
1421-find-numbers-with-even-number-of-digits
1428-jump-game-iii
1475-final-prices-with-a-special-discount-in-a-shop Easy
1477-product-of-the-last-k-numbers
1510-find-lucky-integer-in-an-array
1656-count-good-triplets
1663-detect-cycles-in-2d-grid
1732-find-the-highest-altitude Easy
1878-check-if-array-is-sorted-and-rotated
1895-minimum-number-of-operations-to-move-all-balls-to-each-box
1927-maximum-ascending-subarray-sum
1995-finding-pairs-with-a-certain-sum
2048-build-array-from-permutation
2145-grid-game
2204-find-subsequence-of-length-k-with-the-largest-sum
2215-finding-3-digit-even-numbers
2249-count-the-hidden-sequences
2265-partition-array-according-to-given-pivot
2277-count-equal-and-divisible-pairs-in-an-array
2285-design-bitset
2292-counting-words-with-a-given-prefix
2320-find-all-k-distant-indices-in-an-array
2358-number-of-ways-to-split-array
2387-partition-array-such-that-maximum-difference-is-k
2392-successful-pairs-of-spells-and-potions
2394-count-subarrays-with-score-less-than-k
2428-equal-row-and-column-pairs
2452-words-within-two-edits-of-dictionary Medium
2465-shifting-letters-ii
2473-max-sum-of-a-pair-with-equal-sum-of-digits
2533-bitwise-xor-of-all-pairings
2551-apply-operations-to-an-array
2685-first-completely-painted-row-or-column
2691-count-vowel-strings-in-ranges
2707-merge-two-2d-arrays-by-summing-values
2792-neighboring-bitwise-xor
2856-count-complete-subarrays-in-an-array
3143-longest-unequal-adjacent-groups-subsequence-i
3152-maximum-value-of-an-ordered-triplet-ii
3154-maximum-value-of-an-ordered-triplet-i
3194-find-words-containing-character
3213-count-subarrays-where-max-element-appears-at-least-k-times
3227-find-missing-and-repeated-values
3241-divide-array-into-arrays-with-max-difference
3309-count-prefix-and-suffix-pairs-i
3321-type-of-triangle
3332-minimum-operations-to-exceed-threshold-value-ii
3372-longest-strictly-increasing-or-strictly-decreasing-subarray
3383-taking-maximum-energy-from-the-mystic-dungeon
3429-special-array-i
3512-minimum-operations-to-make-array-sum-divisible-by-k
3621-minimum-operations-to-make-array-values-equal-to-k
3627-find-minimum-time-to-reach-last-room-i
3628-find-minimum-time-to-reach-last-room-ii
3639-zero-array-transformation-i
3653-xor-after-range-multiplication-queries-i Medium
3656-minimum-number-of-operations-to-make-elements-in-array-distinct
3685-count-subarrays-of-length-three-with-a-condition
3741-minimum-distance-between-three-equal-elements-ii Medium
3747-maximum-difference-between-adjacent-elements-in-a-circular-array
3790-fruits-into-baskets-ii

Bit Manipulation

Problem Name Difficulty
0338-counting-bits
2059-unique-length-3-palindromic-subsequences
2509-minimize-xor
2533-bitwise-xor-of-all-pairings
2792-neighboring-bitwise-xor
3600-find-the-k-th-character-in-string-game-i

Trie

Problem Name Difficulty
0386-lexicographical-numbers
2452-words-within-two-edits-of-dictionary Medium
3309-count-prefix-and-suffix-pairs-i

Rolling Hash

Problem Name Difficulty
3309-count-prefix-and-suffix-pairs-i

String Matching

Problem Name Difficulty
2292-counting-words-with-a-given-prefix
3309-count-prefix-and-suffix-pairs-i

Hash Function

Problem Name Difficulty
0816-design-hashset
0817-design-hashmap
3309-count-prefix-and-suffix-pairs-i

Greedy

Problem Name Difficulty
0011-container-with-most-water
0611-valid-triangle-number
0768-partition-labels
0797-rabbits-in-forest
1049-minimum-domino-rotations-for-equal-row
1502-construct-k-palindrome-strings
1529-max-difference-you-can-get-from-changing-an-integer
1689-partitioning-into-minimum-number-of-deci-binary-numbers Medium
2221-check-if-a-parentheses-string-can-be-valid
2387-partition-array-such-that-maximum-difference-is-k
2509-minimize-xor
2704-maximum-difference-by-remapping-a-digit
3143-longest-unequal-adjacent-groups-subsequence-i
3241-divide-array-into-arrays-with-max-difference

Counting

Problem Name Difficulty
0169-majority-element Easy
1227-number-of-equivalent-domino-pairs
1364-tuple-with-same-product
1502-construct-k-palindrome-strings
1510-find-lucky-integer-in-an-array
1915-check-if-one-string-swap-can-make-strings-equal
3455-minimum-length-of-string-after-operations
3629-total-characters-in-string-after-transformations-i
3754-maximum-manhattan-distance-after-k-changes

Math

Problem Name Difficulty
0066-plus-one
0069-sqrtx
0189-rotate-array
0202-happy-number
0797-rabbits-in-forest
1344-angle-between-hands-of-a-clock Medium
1421-find-numbers-with-even-number-of-digits
1477-product-of-the-last-k-numbers
1500-count-largest-group
1529-max-difference-you-can-get-from-changing-an-integer
2481-strictly-palindromic-number
2649-count-total-number-of-colored-cells
2704-maximum-difference-by-remapping-a-digit
2998-count-symmetric-integers
3172-divisible-and-non-divisible-sums-difference
3201-distribute-candies-among-children-ii
3227-find-missing-and-repeated-values
3321-type-of-triangle
3512-minimum-operations-to-make-array-sum-divisible-by-k
3600-find-the-k-th-character-in-string-game-i
3629-total-characters-in-string-after-transformations-i
3754-maximum-manhattan-distance-after-k-changes

Binary Search

Problem Name Difficulty
0069-sqrtx
0611-valid-triangle-number
2392-successful-pairs-of-spells-and-potions
2394-count-subarrays-with-score-less-than-k
3790-fruits-into-baskets-ii

Stack

Problem Name Difficulty
0020-valid-parentheses Easy
1475-final-prices-with-a-special-discount-in-a-shop Easy
2021-remove-all-occurrences-of-a-substring
2221-check-if-a-parentheses-string-can-be-valid
3447-clear-digits

Matrix

Problem Name Difficulty
0073-set-matrix-zeroes
0733-flood-fill
1663-detect-cycles-in-2d-grid
2145-grid-game
2428-equal-row-and-column-pairs
2685-first-completely-painted-row-or-column
3227-find-missing-and-repeated-values
3627-find-minimum-time-to-reach-last-room-i
3628-find-minimum-time-to-reach-last-room-ii

Union Find

Problem Name Difficulty
1058-lexicographically-smallest-equivalent-string
1663-detect-cycles-in-2d-grid

Brainteaser

Problem Name Difficulty
2481-strictly-palindromic-number
2533-bitwise-xor-of-all-pairings

Design

Problem Name Difficulty
0355-design-twitter
0816-design-hashset
0817-design-hashmap
1387-find-elements-in-a-contaminated-binary-tree
1477-product-of-the-last-k-numbers
1797-design-authentication-manager Medium
1995-finding-pairs-with-a-certain-sum
2285-design-bitset

Heap (Priority Queue)

Problem Name Difficulty
0355-design-twitter
2204-find-subsequence-of-length-k-with-the-largest-sum
2473-max-sum-of-a-pair-with-equal-sum-of-digits
3332-minimum-operations-to-exceed-threshold-value-ii
3627-find-minimum-time-to-reach-last-room-i
3628-find-minimum-time-to-reach-last-room-ii

Simulation

Problem Name Difficulty
2021-remove-all-occurrences-of-a-substring
2048-build-array-from-permutation
2260-divide-a-string-into-groups-of-size-k
2265-partition-array-according-to-given-pivot
2428-equal-row-and-column-pairs
2551-apply-operations-to-an-array
3332-minimum-operations-to-exceed-threshold-value-ii
3447-clear-digits
3600-find-the-k-th-character-in-string-game-i
3612-process-string-with-special-operations-i Medium
3653-xor-after-range-multiplication-queries-i Medium
3790-fruits-into-baskets-ii

Sorting

Problem Name Difficulty
0075-sort-colors
0088-merge-sorted-array
0169-majority-element Easy
0611-valid-triangle-number
2204-find-subsequence-of-length-k-with-the-largest-sum
2215-finding-3-digit-even-numbers
2387-partition-array-such-that-maximum-difference-is-k
2392-successful-pairs-of-spells-and-potions
2473-max-sum-of-a-pair-with-equal-sum-of-digits
3241-divide-array-into-arrays-with-max-difference
3321-type-of-triangle

Data Stream

Problem Name Difficulty
1477-product-of-the-last-k-numbers

Sliding Window

Problem Name Difficulty
0940-fruit-into-baskets
2394-count-subarrays-with-score-less-than-k
2463-minimum-recolors-to-get-k-consecutive-black-blocks
2856-count-complete-subarrays-in-an-array
3213-count-subarrays-where-max-element-appears-at-least-k-times

Enumeration

Problem Name Difficulty
1656-count-good-triplets
2215-finding-3-digit-even-numbers
2998-count-symmetric-integers
3201-distribute-candies-among-children-ii
3683-find-the-lexicographically-largest-string-from-the-box-i

Database

Problem Name Difficulty
0180-consecutive-numbers
0197-rising-temperature
0570-managers-with-at-least-5-direct-reports
0577-employee-bonus
0584-find-customer-referee
0595-big-countries
0596-classes-more-than-5-students
0610-triangle-judgement
0619-biggest-single-number
0620-not-boring-movies
0626-exchange-seats
1135-customers-who-bought-all-products
1153-product-sales-analysis-i
1155-product-sales-analysis-iii
1161-project-employees-i
1182-game-play-analysis-iv
1245-user-activity-for-the-past-30-days-i
1258-article-views-i
1278-product-price-at-a-given-date
1292-immediate-food-delivery-ii
1317-monthly-transactions-i
1327-last-person-to-fit-in-the-bus
1338-queries-quality-and-percentage
1390-average-selling-price
1415-students-and-examinations
1480-movie-rating
1509-replace-employee-id-with-the-unique-identifier
1724-customer-who-visited-but-did-not-make-any-transactions
1773-percentage-of-users-attended-a-contest
1801-average-time-of-process-per-machine
1827-invalid-tweets
1877-find-followers-count
1882-the-number-of-employees-which-report-to-each-employee
1908-recyclable-and-low-fat-products
1942-primary-department-for-each-employee
2057-count-salary-categories
2087-confirmation-rate
2127-employees-whose-manager-left-the-company
2495-number-of-unique-subjects-taught-by-each-teacher

Dynamic Programming

Problem Name Difficulty
0118-pascals-triangle
0338-counting-bits
0868-push-dominoes
3143-longest-unequal-adjacent-groups-subsequence-i
3629-total-characters-in-string-after-transformations-i

Graph

Problem Name Difficulty
3627-find-minimum-time-to-reach-last-room-i
3628-find-minimum-time-to-reach-last-room-ii

Shortest Path

Problem Name Difficulty
3627-find-minimum-time-to-reach-last-room-i
3628-find-minimum-time-to-reach-last-room-ii

Combinatorics

Problem Name Difficulty
3201-distribute-candies-among-children-ii

Segment Tree

Problem Name Difficulty
3790-fruits-into-baskets-ii

Ordered Set

Problem Name Difficulty
3790-fruits-into-baskets-ii

Divide and Conquer

Problem Name Difficulty
0169-majority-element Easy
3653-xor-after-range-multiplication-queries-i Medium

Doubly-Linked List

Problem Name Difficulty
1797-design-authentication-manager Medium

Monotonic Stack

Problem Name Difficulty
1475-final-prices-with-a-special-discount-in-a-shop Easy

About

My solutions for leetcode challenges - demonstrating my skills in data structures & algorithm & system design.

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors