Я делаю задачу в теме: fib (0) определяется как = 1. Но это не так? fib (0) равно 0?
Program with fib(0) = 1; spits out fib(4) = 5
Program with fib(0) = 0; spits out fib(3) = 3
Какое правильное определение?
Я делаю задачу в теме: fib (0) определяется как = 1. Но это не так? fib (0) равно 0?
Program with fib(0) = 1; spits out fib(4) = 5
Program with fib(0) = 0; spits out fib(3) = 3
Какое правильное определение?
Ты прав. последовательность Фибоначчи определяется с начальными значениями fib(0) = 0
и fib(1) = 1
. Это требование, чтобы остальная часть последовательности была правильной.
Единственным условием, при котором fib(0) = 1
может работать, является то, что вы определили систему подсчета на основе "-1" (в отличие от обычных условных обозначений, основанных на 0 и 1). Это было бы довольно странно, но я уверен, что вы согласны.
Определение с Fib (0) = 1 известно как комбинаторное определение, а Fib (0) = 0 - классическое определение. Оба они используются в Fibonacci Quarterly, хотя авторам, использующим комбинаторное определение, необходимо добавить предложение объяснения. Бенджамин и Куинн в доказательствах, что Really Count используют f_n для n-го комбинаторного числа Фибоначчи и F_n для n-го классического числа Фибоначчи. Комбинаторное определение хорошее, что неудивительно для подсчета таких вопросов, как "Сколько существует способов преодолеть полет из n шагов, принимая один или два шага за раз?" Когда n равно 0, есть один способ сделать это, а не нулевые пути.
Из номер Фибоначчи в Википедии:
В математике числа Фибоначчи представляют собой следующую последовательность чисел:
По определению первые два Фибоначчи числа равны 0 и 1, и каждый оставшееся число - это сумма предыдущие два. Некоторые источники опускают начальный 0, вместо этого последовательность с двумя 1s.
В математических терминах последовательность Fn чисел Фибоначчи определяется рекуррентное отношение
с начальными значениями
Основываясь на определении последовательности Фибоначчи, вы можете создать замкнутую форму для определения n-го элемента:
F(n) = ( f^n - (1-f)^n ) / sqrt(5),
where f = (1 + sqrt(5)) / 2 [the golden ratio]
При n = 0, очевидно, 0:
F(0) = (1 - 1) / sqrt(5) = 0.
Они оба правильны. Если вы укажете последовательность G {n} рекурсия G {1} = 3, G {2} = 5, G {n} = G {n - 1} + G {n - 2} то большинство людей согласится, что это "последовательность Фибоначчи". Единственное отличие состоит в нескольких терминах на фронте, но ведущие термины в основном не имеют отношения к любому интересному вопросы о последовательности. Сердце Фибоначчи последовательность является правилом добавления, и любая последовательность, которая использует это правило является последовательностью Фибоначчи. Это необходимо только указать, будет ли 0 в последовательности, если вы хочу задать конкретные вопросы об определенном индексе... все остальное - это просто перевод по индексу и в значительной степени не имеет значения. То есть, если проблема "найти решение закрытой формы для N-го значения в последовательность ", то ее решение для G решит проблему для F с просто тривиальным сдвигом решения. жесткая часть проблемы одинакова для обеих последовательностей.
http://en.wikipedia.org/wiki/Fibonacci_number
Сам Фибоначчи начал последовательность с 1, а не 0. Важно признать, что одно мнение не является неизменным фактом, и, возможно, стоит подумать, что вы не всегда знаете лучше, чем тот, кто создал последовательность. Я думаю, что это нормально, чтобы начать последовательность с 0 так же долго, пока вы не ведете себя, это единственный и абсолютно правильный способ делать вещи, поскольку число в "индексе 0" является фундаментально неоднозначным и всегда должно быть сообщено явно.
Вопрос "индекс" применим только к нам, а не к Фибоначчи. Поэтому, если мы хотим пойти со своим стартовым номером, и мы используем индексы на основе 0, мы бы поместили его начальный номер в индекс 0, или если мы используем индексы на основе 1, мы бы поставили его начальный номер в индекс 1.
И так как действительно возможно продолжить последовательность слева, что также делает начало с 0 полностью произвольным. Почему бы не начать с -1 и идти -1, 1, 0, 1, 1, 2...?
fib 0 = 0
fib 1 = 1
Это определение начального значения.
Вы не можете иметь нулевых кроликов и, таким образом, создать пару, и "сколько пар кроликов может быть произведено через год, начиная с одной пары и повторяющихся ежемесячно, начиная со второго месяца", был исходным вопросом для Фибоначчи.