Topical Information

The purpose of this paper is to give you a chance to show your knowledge of recursion, especially 'dynamic programming' vs. memoization.

Paper Information

Read the article Recursion and Dynamic Programming as well as all of its comments. See especially the argument that results when 'Zac' replies. Be sure to check 'Zac's references.

After reading the article, comments, and references, generate an idea of the 'dynamic programming' vs. memoization debate before expanding your research. (Another good place to search would be: Dynamic Programming at the Wikipedia. But please note that a global array is tacky -- using the static local array as in the example from the notes in both C++ and Java is prefered.)

Your paper should report your research results. Did you come to a definitive conclusion? Is there any sense of concensus in the programming community? Could there be a middle ground that might one day be the resolution?

Make sure to describe any examples you come across that might clearly support one side or the other of the argument.

This assignment is (Level 4).

Options

Add (Level 2) to provide working examples of the 'diff' algorithm presented and any other supporting examples you come across. (These should be scripted as a normal programming project would be.)

Add (Level 1) to provide any explanation(s) you find as to why there is no 'r' in memoization (i.e. memorization).