🔴 Hard
44. Wildcard Matching
📰 Для входной строки s и шаблона p реализуйте сопоставление, где:
'?' — cоответствует любому отдельному символу;
'*' — соответствует любой последовательности символов (включая пустую последовательность);
Сопоставление должно охватывать всю входную строку (не частично)
Подсказка: запоминая позицию '*', проверяйте два случая: замена ее на пустую и заполненную последовательность
136/200
#hard
#leetcode44
44. Wildcard Matching
'?' — cоответствует любому отдельному символу;
'*' — соответствует любой последовательности символов (включая пустую последовательность);
Сопоставление должно охватывать всю входную строку (не частично)
Подсказка:
136/200
#hard
#leetcode44
Please open Telegram to view this post
VIEW IN TELEGRAM
Time: O(nm)
Space: O(1)
s = "abcabczzzde", p = "*abc???de*"
#solution44
Please open Telegram to view this post
VIEW IN TELEGRAM
🟡 Medium
64. Minimum Path Sum
📰 Для заданной матрицы найдите путь из левого верхнего угла в правый нижний с минимальной суммой всех чисел, при этом двигаясь только вниз или вправо
Подсказка:используйте динамическое программирование
137/200
#medium
#leetcode64
64. Minimum Path Sum
Подсказка:
137/200
#medium
#leetcode64
Please open Telegram to view this post
VIEW IN TELEGRAM
Time: O(nm)
Space: O(1)
#solution64
Please open Telegram to view this post
VIEW IN TELEGRAM
🟡 Medium
454. 4Sum II
📰 Даны четыре целочисленных массива, все имеют длину n, вернуть количество четверок индексов (i, j, k, l), таких что:
▫ 0 <= i, j, k, l < n
▫ nums1[i] + nums2[j] + nums3[k] + nums4[l] == 0
Подсказка:используйте HashMap
138/200
#medium
#leetcode454
454. 4Sum II
Подсказка:
138/200
#medium
#leetcode454
Please open Telegram to view this post
VIEW IN TELEGRAM
Time: O(n²)
Space: O(n²)
#solution454
Please open Telegram to view this post
VIEW IN TELEGRAM
🟡 Medium
189. Rotate Array
📰 Дан целочисленный массив, поверните его вправо на k шагов, где k— неотрицательное число
Попробуйте реализовать решение, используя O(1) памяти
Подсказка:перед перестановкой элементов переверните части массива, разделенные k
139/200
#medium
#leetcode189
189. Rotate Array
Попробуйте реализовать решение, используя O(1) памяти
Подсказка:
139/200
#medium
#leetcode189
Please open Telegram to view this post
VIEW IN TELEGRAM
Time: O(n)
Space: O(1)
#solution189
Please open Telegram to view this post
VIEW IN TELEGRAM
🟡 Medium
209. Minimum Size Subarray Sum
📰 Дан массив положительных целых чисел и положительное целое число target, вернуть минимальную длину подмассива, сумма которого больше или равна target
Подсказка:используйте подход sliding window
140/200
#medium
#leetcode209
209. Minimum Size Subarray Sum
Подсказка:
140/200
#medium
#leetcode209
Please open Telegram to view this post
VIEW IN TELEGRAM
Time: O(n)
Space: O(1)
#solution209
Please open Telegram to view this post
VIEW IN TELEGRAM
🟡 Medium
394. Decode String
📰 Дана закодированная строка, вернуть ее декодированную.
Правило кодирования: k[string], где string внутри квадратных скобок повторяется ровно k раз, где k — гарантированно положительное целое число. Входная строка всегда соответствует данному формату.
Подсказка:используйте два стека — для чисел и символов, чтобы обрабатывать варианты вложенностей
141/200
#medium
#leetcode394
394. Decode String
Правило кодирования: k[string], где string внутри квадратных скобок повторяется ровно k раз, где k — гарантированно положительное целое число. Входная строка всегда соответствует данному формату.
Подсказка:
141/200
#medium
#leetcode394
Please open Telegram to view this post
VIEW IN TELEGRAM
Time: O(n)
Space: O(n)
#solution394
Please open Telegram to view this post
VIEW IN TELEGRAM
🟡 Medium
38. Count and Say
📰 Дано положительное целое число n, вернуть последовательность «подсчитай и скажи».
Последовательность «подсчитай и скажи» представляет собой последовательность цифр, определяемую рекурсивной формулой:
▫ countAndSay(1) — "1"
▫ countAndSay(n) — представляет собой кодирование RLE серий countAndSay(n - 1).
RLE — это метод сжатия строк, который работает путем замены последовательных одинаковых символов на конкатенацию символа и числа, обозначающего количество символов.
Например, чтобы сжать строку "3322251", мы заменяем "33"на "23", "222"на "32", "5"на "15" и "1"на "11". Таким образом, сжатая строка становится "23321511"
Подсказка:рекурсивно дойдите до базового случая, а затем с помощью цикла реализуйте логику кодирования
142/200
#medium
#leetcode38
38. Count and Say
Последовательность «подсчитай и скажи» представляет собой последовательность цифр, определяемую рекурсивной формулой:
RLE — это метод сжатия строк, который работает путем замены последовательных одинаковых символов на конкатенацию символа и числа, обозначающего количество символов.
Например, чтобы сжать строку "3322251", мы заменяем "33"на "23", "222"на "32", "5"на "15" и "1"на "11". Таким образом, сжатая строка становится "23321511"
Подсказка:
142/200
#medium
#leetcode38
Please open Telegram to view this post
VIEW IN TELEGRAM
Time: O(2^n)
Space: O(n)
#solution38
Please open Telegram to view this post
VIEW IN TELEGRAM
713. Subarray Product Less Than K
143/200
#leetcode713 | #medium
Please open Telegram to view this post
VIEW IN TELEGRAM
Time: O(n)
Space: O(1)
#solution713
Please open Telegram to view this post
VIEW IN TELEGRAM
583. Delete Operation for Two Strings
За один шаг вы можете удалить ровно один символ в любой строке
144/200
#leetcode583 | #medium
Please open Telegram to view this post
VIEW IN TELEGRAM
Time: O(nm)
Space: O(nm)
#solution583
Please open Telegram to view this post
VIEW IN TELEGRAM
279. Perfect Squares
145/200
#leetcode279 | #medium
Please open Telegram to view this post
VIEW IN TELEGRAM
Time: O(√nn)
Space: O(n)
#solution279
Please open Telegram to view this post
VIEW IN TELEGRAM
32. Longest Valid Parentheses
146/200
#leetcode32 | #hard
Please open Telegram to view this post
VIEW IN TELEGRAM