Memoization can be used to reduce function calls or computations. In the following example of Fibonacci series generation through C++, I will use normal recursion and then will change the same for memoization( http://en.wikipedia.org/wiki/Memoization ) to show the reduction of the function call. This is a simple demo implementation. static int counter = 0; int normalfibrecursion(int n) { if( n < 1) { return 0; } if(n == 1) { return 1; } if(n < 3) { return 1; } else { cout << "Call normalfibrecursion(" << n-2 << ") and normalfibrecursion(" << n-1 << ")\n"; counter++; return normalfibrecursion(n-2) + normalfibrecursion(n-1); } } In the above-mentioned simple prototype implementation for the Fibonacci series of n=10, the total function call comes to (54*2) times. This is usually very high and it will grow exponentially as n increases. Below mentioned picture demonstrates the fact: USE OF MEM...