📸 Нужно решить свою задачу?
Загрузите фото — AI решит за секунды!
schoolМатематика verifiedРешено AI

Решение задачи: Оценка трудоемкости рекурсивной функции

calendar_today
schedule1 мин. чтения
visibility1 просмотр

Изображение задачи:
Нажмите для увеличения

Трудоемкость функции определяется рекуррентным соотношением T(n) = T(n-1) + 12 * T(n-2) + C. Решение характеристического уравнения позволяет найти асимптотическую оценку.

check_circle

Подробное решение

Для определения верхней точной асимптотической оценки трудоемкости функции \(f(n)\), проанализируем структуру рекурсивных вызовов. 1. Анализ кода: Внутри функции \(f(n)\) происходят следующие вызовы: — Один вызов \(f(n-1)\). — Цикл `for (int j = 0; j < 12; j++)`, внутри которого вызывается \(f(n-2)\). Это означает, что \(f(n-2)\) вызывается ровно 12 раз. 2. Составление рекуррентного соотношения: Пусть \(T(n)\) — количество вызовов (трудоемкость) для аргумента \(n\). Тогда: \[ T(n) = T(n-1) + 12 \cdot T(n-2) + C \] где \(C\) — константа, описывающая элементарные операции внутри функции. 3. Решение характеристического уравнения: Для нахождения асимптотики вида \(a^n\) составим характеристическое уравнение: \[ r^2 - r - 12 = 0 \] Найдем корни через дискриминант: \[ D = (-1)^2 - 4 \cdot 1 \cdot (-12) = 1 + 48 = 49 \] \[ r_1 = \frac{1 + 7}{2} = 4 \] \[ r_2 = \frac{1 - 7}{2} = -3 \] 4. Определение асимптотики: Общее решение рекуррентного соотношения имеет вид: \[ T(n) = C_1 \cdot 4^n + C_2 \cdot (-3)^n \] Наибольший по модулю корень определяет скорость роста функции. В данном случае это \(4\). Следовательно, трудоемкость растет как экспоненциальная функция: \[ T(n) = O(4^n) \] Ответ: b. O(4^n)
listВсе задачи

Нужно решить свою задачу?

Загрузите фото или введите текст — AI решит с пошаговым объяснением!

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

Введите текст задачи или загрузите фото — получите ответ мгновенно

Выберите режим AI:
🚀 Pro v3
20 руб. • 99.9%
⚡ Lite v3
5 руб. • 95%
Ваш баланс:10 руб.
Пополнить
psychology
Задайте любой вопрос
Поддерживаются текст, фото и голосовой ввод
🎉
Бонус получен!
+20 ₽
Добавлено на ваш баланс