Существует ли какой-либо реальный алгоритм с временной сложностью O (n ^ n), то есть не просто трюк?
Я могу создать такой Алгоритм, как вычисление n ^ n в O (n ^ n)/Θ (n ^ n):
long n_to_the_power_of_m(int n, int m) {
if(m == 0) return 1;
long sum = 0;
for(int i = 0; i < n; ++i)
sum += n_to_the_power_of_m(n, m-1);
return sum;
}
(для вычисления 10 ^ 10 требуется более 4 минут)
Или наоборот: Существуют ли какие-либо проблемы, которые не могут быть решены лучше, чем в O (n ^ n)?