какое максимальное число Фибоначчи можно вычислить этим кодом?
class Fibonacci {
public static int f(int n) {
if (n==0) {
return 0;
}
if (n==1) {
return 1;
}
return f(n-1) + f(n-2);
}}
- Что-то близкое к Integer.MAX_INT
- Что-то близкое к F8000
- Зависит от параметров запуска java машины
Данный код не совсем оптимально работает, так как не переиспользуются ранее полученные значения f(n-1) + f(n-2);
ОтветитьУдалить1,618034 в степени 8000 что-то совсем большое.
Integer.MAX_INT в java не работает, но есть Integer.MAX_VALUE.
Посколько понятие "что-то близкое" очень расплывчато, то я бы выбрал именно первый ответ.
Что может зависить от параметров java машины - это интересно, насколько я знаю, по умолчанию тип integer, а дальше будет переполнение.