Статьи из категории Scala

Хвостовая рекурсия в Scala

В этом посте я расскажу об интересной фиче функционального программирования - о хвостовой рекурсии. Но для начала вспомним, что такое вообще рекурсия. Итак, рекурсия - это описание некоего объекта, который является составной частью самого себя. Например, математическое выражение может содержать числовые операнды, арифметические операции и другие математические выражения.

В работе мы сталкиваемся с рекурсивными функциями. Для нахождения значения такой функции для определенного набора входных параметров требуется найти значение этой функции для другого набора входных параметров. Другими словами, это функция, которая вызывает сама себя. Самыми известными примерами рекурсий являются факториал (именно так утверждают большинство учебников по программированию) и числа Фибоначчи. Забудем о факториале и посмотрим, как выглядит реализации чисел Фибоначчи на Java:

Связаться