When it comes to dynamic programming, is there any cases where the top-down approach is simply infeasible? (or far less efficient? If so, why?) I mean, when is there a reason to 'convert' the top-down approach into a bottom up approach? I recently watched an MIT lecture on dynamic programming which used the LCS as an example, it ended with the person changing the top-down code into bottom-up, but what i didn't really understand was why? Is it just because he wanted to teach how to do it bottom-up, or is there a performance increase?
P.s. I hope my questions don't sound too 'rude', I'm genuinely interested in an answer to this.
Thanks.