Recursion: Data Structures & Algorithms
Recursion: Data Structures & Algorithms
Introduction
What is recursion?
When you turn this into a program, you end up with functions that call themselves (recursive functions)
int function(int x) { int y; if(x==0) return 1; else { y = 2 * function(x-1); return y+1; } }
n!=
Recursive implementation
int Factorial(int n) { if (n==0) // base case return 1; else return n * Factorial(n-1); }
Iterative implementation
int Factorial(int n) { int fact = 1;
for(int count = 2; count <= n; count++) fact = fact * count; return fact; }