Самая длинная палиндромная подстрока | LeetCode 5 | Расширение из центра | Популярный вопрос на с...
Tech For Geeks
0:00 / 0:00
Самая длинная палиндромная подстрока | LeetCode 5 | Расширение из центра | Популярный вопрос на с...
73 просмотра · 10 дн. назад
Tech For Geeks
44 подписчика
73 просмотра · 10 дн. назад
Поиск самой длинной палиндромной подстроки (LeetCode 5) — одна из самых часто задаваемых задач на собеседованиях по программированию. Сначала изучите шаблон расширения вокруг центра: палиндромы зеркально отражаются вокруг центра, поэтому расширяйте их наружу — и не забывайте о центрах четной длины. Затем решите задачу шаг за шагом: описание задачи и примеры, что говорят нам ограничения, перебор O(n³), понимание того, что получается O(n²) с пространством O(1), полные пробные запуски на babad и cbbd, чистый код на C++ и последующие задачи LeetCode 647 и 516.
🔥 Одна из самых часто задаваемых задач на собеседованиях по программированию — часто упоминается в отчетах Amazon, Microsoft, Google, Adobe (на основе отчетов о собеседованиях в сообществе).
В этом видео:
• Палиндромы, подстроки против подпоследовательностей, проверка двумя указателями
• Шаблон расширения вокруг центра
• Нечетные и четные центры (2n − 1 из них)
• От перебора O(n³) до времени O(n²), пространства O(1)
• Пробные запуски на babad и cbbd и формула начального индекса
• Код на C++, примечание Манахера и LeetCode 647 / 516
⏱️ Разделы
0:00 Один из самых часто задаваемых вопросов на собеседованиях
0:25 Шаблон: что такое палиндром?
0:42 Шаблон: проверка одной строки с двумя указателями
0:58 Шаблон: построение палиндрома из его центра
1:20 Шаблон: нечетные и четные центры
1:40 Шаблон: как его распознать
1:54 Шаг 1 · Задача: Самая длинная палиндромная подстрока (LeetCode 5)
2:22 Шаг 1 · Понимание примеров
2:45 Шаг 1 · Ограничения и что они нам говорят
3:04 Шаг 2 · Подход: перебор, проверка каждой подстроки
3:28 Шаг 2 · Подход: расширение вокруг каждого центра
3:57 Шаг 2 · Подход: план
4:26 Шаг 3 · Решение: пробный запуск на babad
5:12 Шаг 3 · Решение: пробный запуск на cbbd, четный центр
5:32 Шаг 3 · Код: вспомогательная функция расширения
5:51 Шаг 3 · Код: перебираем каждый центр
6:16 Шаг 3 · Решение: сложность
6:37 Дополнительные вопросы: подсчет палиндромов (647) и версия подпоследовательности (516)
7:04 Резюме
7:34 Ставьте лайки и подписывайтесь
🧩 Практика
LeetCode 5 · Самая длинная палиндромная подстрока → https://leetcode.com/problems/longest...
LeetCode 647 · Палиндромные подстроки → https://leetcode.com/problems/palindr...
LeetCode 516 · Самая длинная палиндромная подпоследовательность → https://leetcode.com/problems/longest...
LeetCode 125 · Допустимый палиндром → https://leetcode.com/problems/valid-p...
💻 Полный код на C++:
📺 Анимированные структуры данных и алгоритмы — анимация на C++. Полный плейлист: [добавить ссылку на плейлист]
⏮️ Предыдущий: Эпизод 45 · Спиральная матрица
👍 Поставьте лайк видео и подпишитесь, чтобы получать больше анимационных материалов по структурам данных и алгоритмам.
#Строки #СобеседованиеПоПрограммированию #C++
#структурыданных #Собеседование #Алгоритмы #Технологии #Информатика #MNC #FAANG #Amazon #Microsoft #Google