Решение повторений

Я пытаюсь решить данную рекурсию, используя дерево рекурсии, T(n) = 3T(n/3) + n/lg n.

На первом уровне (n/3)/(log(n/3)) + (n/3)/(log(n/3)) + (n/3)/(log(n/3)) = n/(log(n/3)).

На втором уровне оказывается n/(log(n/9)).

Могу ли я обобщить приведенное выше уравнение в виде n.loglogn

Это общее сомнение, которое у меня есть, мне нужно понять это.

Примечание. Любая функция, которая должна быть Theta(n^k log^k (n)) в этой функции k, должна >=1. И в этом случае k равно -1, поэтому главная теорема не имеет значения.


person Chaitanya    schedule 10.02.2010    source источник
comment
Вы ищете решение (в закрытой форме) или вычисляете сложность вычислений?   -  person BlueRaja - Danny Pflughoeft    schedule 11.02.2010


Ответы (3)


Это правда, теорема Мастера не применяется.

T(n) = 3T(n/3) + n/logn.

Пусть g(n) = T(n)/n.

Тогда ng(n) = 3(n/3)*g(n/3) + n/logn.

Таким образом

g(n) = g(n/3) + 1/log n.

Это дает g(n) = Sum 1/log n + 1/log n/3 + 1/log n/9 +...

= Theta(Сумма 1/logn + 1/(logn -1) + 1/(log n - 2) + ...) = Theta(Интеграл 1/x между 1 и logn) = Theta(log log n).

Таким образом, T(n) = ng(n) = Theta(nlog logn.)

Вы правильно угадали.

person Community    schedule 10.02.2010
comment
Похоже, есть ошибка прямо на шаге между вводом g(n)=T(n)/n и частью n*g(n)=...; n/logn никогда не поднималось до n^2/logn - person Adam Miller; 12.09.2013
comment
Я немного слаб в исчислении, не могли бы вы объяснить мне, как вы получили от суммы 1/logn + 1/(logn-1) + 1/(logn-2) + ... к интегралу 1/x между 1 и логин. Я понимаю, что вы переписываете бесконечную предельную сумму как интеграл, но не понимаю, как это сделать. - person Syed Souban; 14.08.2019

Если вы используете дерево для визуализации вопроса, вы увидите, что сумма каждого ранга равна:

  • ранг 0:

введите здесь описание изображения

(что равно n/log(n)) - ранг 1:

введите здесь описание изображения

и так далее, с общей суммой n/log(n/(3^i)) для каждого ранга, где я - текущий ранг. итак, все вместе получаем:

введите здесь описание изображения

если мы раскроем уравнение, то получим:

введите здесь описание изображения

(начиная с конца и возвращаясь назад.. сначала, когда я = log (base3) n, а затем возвращаясь назад)

поскольку база журнала не имеет значения в тета, мы получаем:

введите здесь описание изображения

который:

введите здесь описание изображения

что (в сигме):

введите здесь описание изображения

который представляет собой гармонический ряд, равный:

введите здесь описание изображения

а так как ln — это логарифм с основанием e, а логарифмические основания не имеют значения в тета, мы наконец получаем:

введите здесь описание изображения

что равно:

введите здесь описание изображения

Итак, это тета (n log log n).

person shuminizer    schedule 25.06.2015
comment
Я на самом деле исправил ваши ссылки, прежде чем открывать их, и теперь немного жалею об этом: P. Просто вставьте математику в code snippets - в любом случае это более читабельно. - person Dan Scally; 25.06.2015
comment
Для тех, кто понимает, как гармонический ряд аппроксимируется для регистрации n, проверьте это ссылка - person Syed Souban; 14.08.2019

T(n)=3T(⌊n3⌋)+2nlogn с базовым условием 1 при n<=1 Методом замены:

Страница ответов 1 Страница ответов 1

Страница ответов 2 Страница ответов 2

person Kartik Khanna    schedule 01.01.2021