Как решить повторение методом итераций ....?

Я пытался, но не нашел Т (п) = 3t (п / 3) + п / lg (п) Может ли кто-нибудь дать мне решение

Добро пожаловать в Stack Overflow, не совсем понятно, о чем вы спрашиваете. Разместите любой код, который вы уже пробовали. Также ознакомьтесь с этим постом, чтобы узнать, как быстро получить ответы. stackoverflow.com/help/how-to-ask

Ryan Breece 21.10.2018 21:03

Вероятно, это больше подходит для math.stackexchange.com.

chepner 20.11.2018 22:26
Стоит ли изучать 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
2
22
1

Ответы 1

Хороший способ визуализировать эту проблему - это рекурсивная древовидная диаграмма.

Здесь нарисованы первые три уровня дерева.

Для первого уровня у нас общая работа n / lg n

Для второго уровня у нас есть 3 вызова (n/3) / lg (n/3). Суммирование этих вызовов дает общую работу n / lg (n/3) на этом уровне.

Для третьего уровня у нас есть 9 вызовов (n/9) / lg (n/9). Суммирование этих вызовов дает общую работу n / lg (n/9) или n / lg (n/3^2) на этом уровне.

Рекурсивные вызовы будут продолжаться до тех пор, пока у нас не будет вызова T (1). Это условие выполняется на n/3^k = 1 или k = log3(n).

Итак, теперь у нас есть простое суммирование всех уровней, равное это.

n - постоянная величина, которая может быть исключена из уравнения. Затем расширение суммирования дает это уравнение.

Мы можем упростить это суммирование как показано здесь.

В Big Theta суммирование может быть упрощено до Θ(n*(1+log(logn)), поскольку суммирование представляет собой гармонический ряд.

Далее, упрощая, у нас есть Θ(n+n*log(logn)), и из-за правил Большой Теты мы можем упростить до последней Большой Теты Θ(nlog(logn)), поскольку первые n будут расти медленнее и не имеют особого значения в нашем окончательном уравнении.

Но ждать! Вы просили Big O. К счастью, Big Theta дает как верхнюю, так и нижнюю границу проблемы. Big O дает только верхнюю границу. Что это значит для нас? Big Theta на самом деле является Big O, но не наоборот, позволяя вам сказать, что отношение повторяемости - это O(nlog(logn)).

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

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