Алгоритмы и структуры данных

Recursion and Divide and Conquer

Рекурсия и разделяй-и-властвуй

актуальноТекущий рабочий стандарт

Направления: Основы · Алгоритмы и структуры данных

Задача сводится к таким же задачам меньшего размера. Основа слиянием, быстрой сортировки, обхода деревьев и почти всей динамики.

Ключевые тезисы

  • Обязательна база , иначе переполнится — самая частая ошибка.
  • Мастер-теорема даёт сложность рекуррентности вида T(n) = a·T(n/b) + f(n) без раскручивания.
  • Глубокая в Python упирается в лимит стека: переписывают в цикл или увеличивают лимит осознанно.

Видеолекции

Записи университетских курсов, где эта тема звучит. Где у записи есть тайм-коды, ссылка открывает её с нужной секунды; где их не проставили — с начала.

Связанные темы

Алгоритмическое мышление

Problem Pattern Recognition85%

Как распознать паттерн задачи · Алгоритмы и структуры данных

Уровень над алгоритмами: по формулировке условия понять, какой приём здесь работает. «Отсортированный массив», «подряд идущие элементы», «ближайший больший справа» — каждая такая фраза указывает на конкретное семейство решений.

Time and Space Complexity85%

Асимптотическая сложность · Алгоритмы и структуры данных

Способ сравнить алгоритмы, не запуская их: как растёт время работы с ростом входа. Отбрасывает константы и оставляет то, что решает на больших данных.

Dynamic Programming85%

Динамическое программирование · Алгоритмы и структуры данных

Перебор, в котором каждое подсостояние считается ровно один раз. Превращает экспоненциальный перебор в полиномиальный, если подзадачи перекрываются.

Greedy Algorithms85%

Жадные алгоритмы · Алгоритмы и структуры данных

На каждом шаге берём локально лучший вариант и не пересматриваем решение. Работает не всегда — но когда работает, проще и быстрее динамики.

Binary Search85%

Бинарный поиск · Алгоритмы и структуры данных

Половинное деление на отсортированных данных: за логарифм шагов вместо линейного перебора. Приём шире поиска — им ищут ответ в любой монотонной задаче.

Проверить себя

Тема встречается в тесте по направлениям — ошибки приведут обратно на эту страницу.

Следующий шагПроверить себя: Алгоритмы и структуры данныхТема встречается в этом тесте 1 раз. Ошибка приведёт обратно на эту страницу — с объяснением, что именно не сошлось.Перейти →

Глава «Алгоритмы и структуры данных» последний раз правилась . Нашли ошибку — напишите.