Given what you really want, I think this is a duplicate question of Design patterns for converting recursive algorithms to iterative ones.
From the algorithm in 0-1 knapsack problem can put everything in a table of I and w. Make a two diminutional table filled with NO_VALUE constants(-1 or something like that). Then when you need to get the value for mi, w you find what indexes from the table you need, check if their computed(by comparing to NO_VALUE), and computing them if their not.
Here you will gain much less code execution in tradeoff for space because you will never compute the same value twice. Edit: In addition, from there you can continue to find patterns, like you're always using one row, or one diagonal and such and cut out everything you don't need in the table.
I cant really gove you an answer,but what I can give you is a way to a solution, that is you have to find the anglde that you relate to or peaks your interest. A good paper is one that people get drawn into because it reaches them ln some way.As for me WW11 to me, I think of the holocaust and the effect it had on the survivors, their families and those who stood by and did nothing until it was too late.