• 记忆的递归解决方案是否具有与非递归解决方案相同的复杂性?我认为在大多数情况下,递归解决方案会花费更多,但是使用备忘录技术我并不真正理解为什么我不应该总是使用递归?对我来说更短,更容易理解
  • 接口问题-是否可以声明一个函数,该函数将强制使用该接口的任何人在其中应用部分代码?或者我只能声明函数的签名,仅此而已?因为例如在android中,我可以实现侦听器,并且在方法内部可以看到无法更改的代码行,因此与习惯于
  • 的常规实现不同

    最佳答案

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

    关于java - 内存和界面,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35317174/

    10-10 12:47