w********m 发帖数: 1137 | 1 我老是认为是一个概念
它们有区别吗
★ 发自iPhone App: ChineseWeb 8.7 |
g*****y 发帖数: 7271 | 2 back tracing may be one step of dp.
not the other way around.
【在 w********m 的大作中提到】 : 我老是认为是一个概念 : 它们有区别吗 : ★ 发自iPhone App: ChineseWeb 8.7
|
D*******a 发帖数: 3688 | 3 dp是解优化问题的(min/max)
backtracking通常只是搜索某种解
【在 w********m 的大作中提到】 : 我老是认为是一个概念 : 它们有区别吗 : ★ 发自iPhone App: ChineseWeb 8.7
|
w*********a 发帖数: 9279 | 4 dp要求问题本身必须具备 optimal substructure。
另外,凡是能用dp解决的问题,都可以不用dp解决。
backtracking,只要是树就可以搞。 |
w***g 发帖数: 5958 | 5 实际提到backtracking的时候,基本上都是指手工用堆栈实现递归,
不管从性能上还是开销上跟递归都是一样的,控制不好也会stack overflow。
backtracking除了用来虐别人或者自虐(或者练习写白板)以外没有
任何实际上的好处。
【在 w********m 的大作中提到】 : 我老是认为是一个概念 : 它们有区别吗 : ★ 发自iPhone App: ChineseWeb 8.7
|
H****n 发帖数: 50 | 6 这个不太同意。递归用的是Thread stack, 尺寸小容易overflow. 手工堆栈可以用heap
memory, 尺寸更易调节,不易overflow. 递归还有function polog 和 epilog ove
head.
【在 w***g 的大作中提到】 : 实际提到backtracking的时候,基本上都是指手工用堆栈实现递归, : 不管从性能上还是开销上跟递归都是一样的,控制不好也会stack overflow。 : backtracking除了用来虐别人或者自虐(或者练习写白板)以外没有 : 任何实际上的好处。
|