最佳答案
关于动态编程,您有两个选择:自上而下的方法(带记忆的递归)和自下而上的方法。自下而上的方法使用循环构建查找数组,因此它比递归更有效,因为递归会浪费堆栈分配并浪费时间。通过递归记忆,您可以简单地“记住”找到的解决方案,从而不必一次又一次地重新计算相同的问题。因此,您在解决之前先检查当前问题是否已解决。这是它与回溯之间的区别,后者会重复解决相同的问题,因此需要重复的时间。
关于java - 内存和界面,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35317174/