В этом рекуррентном отношении T(n)=T(n/4)+T(3n/4)+c я просто запутался в том, каково отношение этого рекуррентного отношения с анализом наилучшего и наихудшего случая, поскольку мы должны решить обе подзадачи размером n / 4 и 3n / 4 Итак, какова здесь терминология анализа наихудшего или лучшего случая?

Более того, мы должны использовать здесь theta (log n) наш O (log n), хотя, увидев ссылку ниже, я нашел O (log n) более подходящим, но все еще не мог понять, почему мы не используем здесь theta (log n).

Как решить рекурсивную сложность T (n) = T (n / 4) + T (3n / 4) + cn

1
Radha Gogia 26 Дек 2015 в 21:50

2 ответа

Лучший ответ
T(n) = T(n/4) + T(3n/4) + CONST <= 2T(3n/4) + CONST

Мы будем использовать случай 1 основной теоремы с:

a = 2, b = 4/3.
c = log_{4/3}(2) ~= 0.4
CONST is in O(n^0.4)

Таким образом, из основной теоремы можно вывести, что 2T(3n/4) + CONST находится в Theta(logn), а поскольку T(n) <= 2T(3n/4) + CONST, мы можем сказать, что T(n) находится в O(logn).

Следуя той же идее, но с нижней границей:

T(n) >= T(3n/4) + CONST ...

И снова используя основную теорему, мы можем сказать, что T (n) также находится в Omega(logn).

Поскольку T (n) одновременно является O (logn) и Omega (logn), это также Theta (logn).


Что касается вашего вопроса, вы можете использовать нотацию с большим О или тета, что вам больше нравится. Как видите, для доказательства Theta требуется немного больше работы, но это также более информативно, так как показывает, что найденная вами граница жесткая.

3
amit 26 Дек 2015 в 19:42

Эти типы повторений могут быть легко решены с помощью теоремы Акра-Бацци (и если вы посмотрели на связанный с вами вопрос, кто-то показал вам решение аналогичной проблемы).

Итак, 1/4^p + (3/4)^p = 1, где p = 1. В вашем случае g(u) = c, поэтому интеграл

enter image description here

Итак, int c/u^2 du из 1 to x, который равен -1/u, вычисленному из 1 to x. Это равно -1/x + 1. Теперь, когда вы умножите это на x, вы получите, что сложность равна O (n) , а не O(log n), как предлагали другие.

1
Salvador Dali 26 Дек 2015 в 23:35