Решение T (n) = 9T (n / 10) + log ^ 3 n?

у меня рецидив

T(n) = 9T(n/10) + log3 n

и я пытаюсь найти его сложность.

После i-замен я вижу, что

T(i) = 9T(n / 10i+1) + log3(n / 10i).

Однако я не знаю, как продолжить. Как решить этот рецидив?

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
2
0
584
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

использовать мастер-метод для решения проблемы

Он решает повторения вида T(n) = aT(n/b) + f(n).

Мастер-метод — это прямой путь к решению. Мастер-метод работает только для повторений следующего типа или для повторений, которые могут быть преобразованы в следующий тип.

T(n) = aT(n/b) + f(n), где a >= 1 и b > 1 Возможны следующие три случая: 1. Если f(n) = Θ(nc), где c < Logba, то T(n) = Θ(nLogba)

  1. Если f(n) = Θ(nc), где c = Logba, то T(n) = Θ(ncLog n)

3. Если f(n) = Θ(nc), где c > Logba, то T(n) = Θ(f(n))

.он используется для решения повторений в таких функциях, как T(n) = aT(n/b) + f(n), где a >= 1 и b > 1 такой же как твой

Я знаю об основной теореме, но пытаюсь решить проблему с помощью подстановок или дерева рекурсии. Я был бы признателен за вашу помощь, если это возможно.

user9994319 01.06.2019 15:24
Ответ принят как подходящий

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

Например, обратите внимание, что ваш повтор

T(n) = 9T(n / 10) + log3 n

ограничен снизу рекуррентностью

L(n) = 9L(n / 10) + 1.

Это повторение может быть напрямую решено с помощью основной теоремы. Существует множество различных формулировок Главной теоремы, но мне больше всего нравится та, которая решает рекуррентные отношения вида

T(n) = aT(n / b) + nd

для констант a, b и d. В этом случае у нас есть a = 9, b = 10 и d = 0, и, поскольку logb a > d, это означает, что рекуррентность решает L (n) = Θ (nlog109). Это означает, что мы знаем, что ваша повторяемость не меньше Ω(nlog109).

Точно так же обратите внимание, что ваше повторение ограничено сверху

U(n) = 9U(n / 10) + nε

для любого фиксированного ε > 0, поскольку любой полиномиальный член доминирует над любой постоянной степенью логарифмического члена. Давайте представим, что ε очень и очень мало. Что в этом случае говорит Основная теорема? Здесь мы имеем a = 9, b = 10 и d = ε. Предполагая, что ε действительно очень, очень мало, мы получим, что logb a > ε, и поэтому рекуррентность сводится к Θ(nlog109).

Это показывает, что ваше повторение хорошо зажато между двумя другими повторениями, которые равны Ω(nlog109) и O(nlog109) соответственно, поэтому ваше повторение решается как Θ (пlog109).

Обобщить:

  • Если у вас есть повторение с добавленным необычным функциональным термином, вы иногда можете решить это повторение, ограничив его сверху и снизу повторениями с более простыми аддитивными членами.

  • Логарифмы ограничены снизу константами и сверху любым полиномом (положительным, постоянной степени).

Надеюсь это поможет!

Черт, я совершил прыжок веры, предположив, что логарифмические члены не будут сокращаться после вычисления сумм, и забыл проверить результат на соответствие Главной теореме... объяснение кажется более интуитивным для OP. +1

meowgoesthedog 02.06.2019 21:52

Другие вопросы по теме

Похожие вопросы