Мощь и беспомощность автоматической оптимизации



             

Устранение хвостовой рекурсии


Хвостовой рекурсией (tail recursion) называется такой тип рекурсии, при котором вызов рекурсивной функции следует непосредственно за оператором return. Классическим примером тому является алгоритм вычисления факториала:

int fact(int n, int result)

{

       if(n == 0)

       {

              return result;

       }

              else

       {

              return fact(n - 1, result * n);

       }

}




Содержание  Назад  Вперед