Фразы-триггеры и паттерны (LeetCode)

Как использовать

Читай условие задачи → находи ключевую фразу → выбирай паттерн.


Фраза в условииПаттернПримечание
longest substring🪟 Sliding WindowИскать максимальное окно
minimum window🪟 Sliding WindowИскать минимальное окно
subarray with sum🪟 Sliding Window / Prefix SumЗависит от условий
sorted array🔍 Binary Search / Two PointersЕсли поиск → Binary Search
pair with target sum🔍 Two Pointers / Hash MapЕсли sorted → Two Pointers
remove duplicates🔍 Two PointersIn-place модификация
palindrome🔍 Two Pointers / DPПростая проверка → Two Pointers
in-place🔍 Two PointersБез доп. памяти
linked list cycle🔍 Two Pointers (Fast/Slow)Floyd’s algorithm
shortest path📡 BFSГраф без весов → BFS
level order📡 BFSОбход дерева по уровням
minimum steps📡 BFSКратчайший путь → BFS
all combinations🔁 BacktrackingПолный перебор с возвратом
all permutations🔁 BacktrackingПерестановки
generate all🔁 BacktrackingГенерация вариантов
top K elements🏔️ HeapK-largest/smallest
kth largest/smallest🏔️ Heap / QuickselectHeap проще
merge K sorted🏔️ HeapСлияние списков/массивов
maximum/minimum📐 DP / GreedyЕсли оптимизация → DP
count ways📐 DPКомбинаторика с мемоизацией
longest/shortest📐 DP / Sliding WindowПодпоследовательность → DP
frequency🗂️ Hash MapПодсчет встречаемости
anagram🗂️ Hash MapСравнение частот символов
find duplicates🗂️ Hash Map / SetO(1) lookup
valid parentheses📚 StackБалансировка скобок
next greater/smaller📚 Monotonic StackМонотонный стек
rotate🔧 Array manipulationРеверс частей массива

Паттерны