Как решить рекурсию с двумя отдельными сходящимисями

cs.stackexchange https://cs.stackexchange.com/questions/128643

Вопрос

Какой правильный способ решить следующую рекурсию: $ t (n)= t (\ lceil \ frac {n} {2} \ RCEIL) + T (N-2) $

или в основном любая рекурсия, которая имеет две части, которая сходится в другую скорость.

Я пытаюсь получить большой $ o $ приближение, как можно более жестко, но я не мог понять это с любым «традиционным» подходом. .

Это было полезно?

Решение

Если вы возьмете начальные условия $ t (0)= 0 $ и $ t (1)= 1 $ Тогда вы получаете a018819 (до Shift), который по существу A000123 . Известно, что асимптотика является $ t (n)= n ^ {\ theta (\ log n)} $ . Ссылки по второй записи содержат более точную асимптотическую информацию.

Выполне явно, A018819 удовлетворяет рецидивов $ A (2M + 1)= A (2M)= A (2M-1) + A (M) $ , С $ a (0)= A (1)= 1 $ . Вы можете показать индуктивно, что $ a (n)= t (n + 1) $ . Действительно:

    .
  • Если $ n= 2m + 1 $ затем $$ t (n + 1)= t (2m + 2 )= T (M + 1) + T (2M)= A (M) + A (2M-1)= A (2M)= A (2M + 1)= A (N). $$ < / li>
  • Если $ n= 2m $ затем $$ t (n + 1)= t (2m + 1)= T (M + 1) + T (2 м-1)= A (M) + A (2M-2)= A (M) + A (2M-1)= A (2M)= A (N). $$
Лицензировано под: CC-BY-SA с атрибуция
Не связан с cs.stackexchange
scroll top