2017-02-11 15 views
0

Я имею в виду, что знаю алгоритмы, которые говорят о создании экспоненциальных возможностей и итерации через них. Но может ли кто-нибудь дать мне псевдокод, где код проходит через все случаи и находит ответ.Есть ли простой пример кода экспоненциального алгоритма времени?

+0

Вам нужен пример алгоритма экспоненциальной временной сложности? Проверка тавтологии. –

ответ

1

Да, есть. Самый простой пример - простой алгоритм, используемый для вычисления серии Фибоначчи без динамического программирования.

int f(n) 
{ 
if(f == 0 || f == 1) 
    return 1; 
return f(n-1)+f(n-2); 
} 

Этот код занимает экспоненциальное время. Время для вычисления f(n) пропорционально числу n+1-го числа Фибоначчи. Вы можете проверить этот link, чтобы узнать о росте серии Фибоначчи (Courtesy: David Leese's blog). Если вы посмотрите на логарифмический граф рядов Фибоначчи, вы увидите, что он имеет экспоненциальный рост.

Решение - это динамическое программирование, конечно. Храните элементы серии Фибоначчи, которые мы вычислили до сих пор, и используем их как таблицу поиска.

 Смежные вопросы

  • Нет связанных вопросов^_^