МатВектор

Command Palette

Search for a command to run...

🔀 Дискретка30 минСложность 3/5+65 XP

Рекуррентные соотношения: от Фибоначчи до характеристического уравнения

Как задать последовательность через саму себя и свернуть её в формулу: характеристическое уравнение, кратные корни, башня Ханоя и Фибоначчи в буквальном виде.

5 интерактива3 квизаУрок 16 из 20Обновлено 01.06.2025Обычный

Скажите вслух: 1, 1, 2, 3, 5, 8, 13… Любой продолжит. Числа Фибоначчи — самый известный пример задания последовательности не формулой от номера, а правилом «следующий складывается из двух предыдущих». Такие правила окружают нас везде: лестницу из ступеней можно пройти шагами в одну или две ступеньки, у дерева файлов рекурсивно растёт число ветвей, у каждого рекурсивного алгоритма есть своя формула времени работы. Как из такого самоссылочного правила вытащить явную формулу — вопрос этого урока.

Что такое рекуррентное соотношение#

Рекуррентное соотношение — формула, выражающая каждый член последовательности через предыдущие: , , . Соотношение само по себе ничего не задаёт: к нему нужны начальные условия — первые один или два члена. Факториал живёт по правилу с началом (см. словарную статью факториал); Фибоначчи — по правилу с началом , . Правило плюс начальные условия — и последовательность определена однозначно.

Проверим на лестнице. Человек поднимается по ступенькам, делая шаги на одну или две ступени. Сколько способов подняться на -ю ступень? Обозначим число способов . Последний шаг — либо с ступени , либо с , других вариантов нет, значит . Начало: , . Дальше правило считает само: , , , . Рекуррента — естественный язык задач, где новое состояние собирается из предыдущих; тот же ход мысли ведёт и к деревьям рекурсии в алгоритмах.

Линейные однородные рекурренты: главная техника#

Основной класс курса — линейные однородные соотношения с постоянными коэффициентами: , где — числа, и никакого «довеска» отдельно от членов. Идея решения красива до неприличия: попробуем найти решения вида — чистые степени. Подставляем:

характеристическое уравнение — обычный квадратный трёхчлен

Сократив на , получаем характеристическое уравнение . Каждое его решение даёт последовательность , послушно выполняющую рекурренту. Дальше работает линейность: если и — решения, то и любая комбинация — тоже. Константы и подбираются по начальным условиям.

Фибоначчи в буквах

Для характеристическое уравнение: , то есть . Корни: — золотое сечение — и . Общая форма ; подстановка и даёт , :

формула Бине — явное решение рекурренты Фибоначчи

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

Когда корень один

Дискриминант может обнулиться. Для соотношения характеристическое уравнение имеет двойной корень . Одной степенью тут не обойтись — второе независимое решение приносит множитель : общая форма . Решим до конца при начальных условиях , — это классический экзаменационный номер, пройдите его по шагам.

Порядок выше второго: лестница из трёх шагов

Техника не привязана к двойке. Пусть теперь шагать можно на одну, две или три ступени: тогда — последний шаг был с одной из трёх соседних ступенек. Начальных условий уже три: , , , и дальше правило считает само: , . Характеристическое уравнение — уже кубическое, и общий принцип тот же: корней (с учётом кратности) — независимых решений, комбинация из констант, подгоняемых по начальным условиям. Именно поэтому в задаче порядка без начальных членов ответ не восстановить — данных просто не хватает.

Неоднородные соотношения и башня Ханоя#

Если рядом с членами стоит добавка — соотношение неоднородное: . Стандартный приём: угадать частное решение вида добавки (для константы — константа ) и прибавить общее решение однородной части. Легенда задачи о Ханойской башне: чтобы перенести пирамиду из дисков, сначала переносим дисков на вспомогательный стержень, затем самый большой — на цель, затем пирамиду поверх него. Отсюда с .

Решение проверяется подстановкой: , и правда, , , , . Число перекладываний удваивается и догоняет плюс один — экспоненциальный рост в чистом виде: для 10 дисков нужно хода, для 64 — число, за которое легендарные монахи не управятся и за века. Заметьте экономию мысли: вместо того чтобы считать ходы руками, мы выписали правило пересчёта и свернули его в формулу — ровно та же связка «рекурсия плюс формула», что и в анализе сложности алгоритмов, о которой ниже.

  1. Соотношение с : добавка — не константа, а номер шага. Частное решение ищем квадратичным: .
  2. Подстановка: . Раскрываем: .
  3. Приравниваем коэффициенты: , откуда ; , откуда .
  4. Однородная часть даёт константу ; условие обнуляет её. Итог: .
  5. Проверка: , , , — треугольные числа, и каждое получается прибавлением номера шага. Сходится.

Рекурренты в анализе алгоритмов#

Где это нужно за пределами задачника? В любом рекурсивном алгоритме время работы задаётся рекуррентой. Сортировка слиянием делит массив пополам, сортирует обе половины и сливает их за операций: . Развёртка по уровням даёт уровней с линейной работой на каждом — итого (общий ответ для подобных отношений называют мастер-теоремой). Подробный язык для сравнения скоростей роста — O-нотация — живёт в соседнем уроке о сложности алгоритмов.

  • Рекуррента без начальных условий не задаёт последовательность — всегда проверяйте начало
  • Линейная однородная второго порядка решается через характеристическое уравнение
  • Два разных корня → ; кратный корень →
  • Неоднородное = частное решение добавки + общее однородное
  • Ответ обязан проходить проверку подстановкой двух первых членов — без этого решение не засчитывается

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

Проверь себя+15 XP

Лестница: шаги на 1 или 2 ступени, f(1) = 1, f(2) = 2. Сколько способов подняться на 6 ступеней?

Проверь себя+15 XP

Характеристические корни соотношения aₙ = 5aₙ₋₁ − 6aₙ₋₂?

Проверь себя+15 XP

Минимальное число перекладываний для башни из 10 дисков?

Индукция — главный инструмент доказательства рекуррентных формул; формальное устройство базы и перехода разбирает статья математическая индукция. Механика у неё как у костяшек домино: сначала опрокидываем первую (база), затем показываем, что каждая падающая костяшка роняет следующую (переход).

Частые вопросы

Что такое рекуррентное соотношение одним предложением?

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

Обязательно ли решать рекурренту явно?

Не всегда: для вычислений хватает итераций (или динамического программирования — ровно так считают Фибоначчи в коде). Явная формула нужна, когда важны ответы для больших , оценка скорости роста или доказательства свойств последовательности.

Что делать, если корни характеристического уравнения комплексные?

Механика та же — общее решение линейная комбинация корней, только корни записываются через тригонометрию по формуле Муавра. Такие последовательности «дрожат»: пример — , члены циклически повторяются с периодом шесть.

Чем рекуррента отличается от рекурсии в программировании?

Рекурсия — способ организации вычисления: функция вызывает саму себя. Рекуррента — математическое описание последовательности. Формула времени работы рекурсивной функции — это рекуррентное соотношение; на этом стыке и живёт анализ алгоритмов.

Реши свою задачу сразу после теории

Каждый метод — это алгоритм, разобранный на примерах, и живой решатель: введите своё задание и сравните ход решения.

Готовитесь к контрольной?

Чеклист тем по «Дискретка»: что вы уже умеете, что повторить и в каком порядке.

Открыть чеклист предмета →

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

Босс-экзамен по «Дискретка»: квизы всех уроков плюс бесконечный поток сгенерированных задач. Каждая попытка — новый расклад.

Начать босс-экзамен →