由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 关于dp的一点困惑
相关主题
dynamic programming的一点疑问被google拒了~-。-
面试官非常反感recursion吗?fibonacci recursion空间复杂度是多少 (转载)
两种DPcareer cup上面一题递归求解
请教将任意递归问题转换为尾递归的方法Careercup上看到的一个google的题目 下面有个人回复很好玩
问一个题(求推荐)recursion以及把recursion转变为iteration的资料
有重复元素的全排列,递归算法问一个递归的问题
请问走楼梯的问题如何打印所有的路径。用了递归以后,怎么计算空间复杂度?
Quick sort为什么需要logN的memory?递归多少层会stackoverflow?
相关话题的讨论汇总
话题: bottom话题: dp话题: 递归话题: top话题: down
进入JobHunting版参与讨论
1 (共1页)
r******j
发帖数: 92
1
关于dp的top down和bottom up。一般我都是先从top down的recursion开始考虑,然后
找出重复计算的地方,如果用memorization的话,直接存一下,以后再查就好了。如果
这样考虑的时候,我们存的一般都是尾巴上的结果,然后一点一点的递归到头,就有结
果了。可是我们bottom up的时候是从头一点一点的到尾巴。感觉这是两种不同的思路
啊。也就是说,是不是所有能用top down解的dp问题都能用bottom up解呢?我发现我
做的题好像都是呢。如果是的话,为什么呢?
f*********g
发帖数: 110
2
本身就是同一个问题,当然top down 和bottom up都可以了,就像一个人走楼梯,从上
走到下,和从下走到上,都是完成了走一遍楼梯的任务一样。
r******j
发帖数: 92
3
但是应该有题只能从前往后走,有题只能从后往前走吧。

【在 f*********g 的大作中提到】
: 本身就是同一个问题,当然top down 和bottom up都可以了,就像一个人走楼梯,从上
: 走到下,和从下走到上,都是完成了走一遍楼梯的任务一样。

S******1
发帖数: 216
4
感觉有些听一眼都能看出来的直接就bottom up了, 不是那么同意但感觉能dp的就用
recursion + cache
y***n
发帖数: 1594
5
recursion + cache 也是我的体会,但是碰到没有看到的题还是不那么容易的。
S******1
发帖数: 216
6

记得当年某人用recursive + cache推出了pretty print的dp, 直接shock了

【在 y***n 的大作中提到】
: recursion + cache 也是我的体会,但是碰到没有看到的题还是不那么容易的。
a*********0
发帖数: 2727
7
递归也是从头开始啊,你要递归到最里层才会有结果可存

【在 r******j 的大作中提到】
: 关于dp的top down和bottom up。一般我都是先从top down的recursion开始考虑,然后
: 找出重复计算的地方,如果用memorization的话,直接存一下,以后再查就好了。如果
: 这样考虑的时候,我们存的一般都是尾巴上的结果,然后一点一点的递归到头,就有结
: 果了。可是我们bottom up的时候是从头一点一点的到尾巴。感觉这是两种不同的思路
: 啊。也就是说,是不是所有能用top down解的dp问题都能用bottom up解呢?我发现我
: 做的题好像都是呢。如果是的话,为什么呢?

r******j
发帖数: 92
8

我的意思是说,递归的最里层往往是最后一个要处理的字符或者数字,所以如果直接把
这个递归转成非递归的话,理论上我们也要从这最后一个字符或者数字出发,向头的方
向走。但是,我们一般做的bottom up的递归,却实际上是从第一个往最后一个走。两
者走的方向不同。根据递归的解法,我能明白从后往前走,但是为什么从前往后走的
bottom up也可以呢?

【在 a*********0 的大作中提到】
: 递归也是从头开始啊,你要递归到最里层才会有结果可存
f*********g
发帖数: 110
9
同意absolute100, 不明白楼主在纠结什么
l*******g
发帖数: 82
10
dp是啥的缩写?

关于dp的top down和bottom up。一般我都是先从top down的recursion开始考虑,然后
找出重复计算的地方,如果用memorization的话,直接存一........

【在 r******j 的大作中提到】
: 关于dp的top down和bottom up。一般我都是先从top down的recursion开始考虑,然后
: 找出重复计算的地方,如果用memorization的话,直接存一下,以后再查就好了。如果
: 这样考虑的时候,我们存的一般都是尾巴上的结果,然后一点一点的递归到头,就有结
: 果了。可是我们bottom up的时候是从头一点一点的到尾巴。感觉这是两种不同的思路
: 啊。也就是说,是不是所有能用top down解的dp问题都能用bottom up解呢?我发现我
: 做的题好像都是呢。如果是的话,为什么呢?

1 (共1页)
进入JobHunting版参与讨论
相关主题
递归多少层会stackoverflow?问一个题
关于尾递归有重复元素的全排列,递归算法
为什么这个阶乘函数算到37就溢出了?请问走楼梯的问题如何打印所有的路径。
正则的题Quick sort为什么需要logN的memory?
dynamic programming的一点疑问被google拒了~-。-
面试官非常反感recursion吗?fibonacci recursion空间复杂度是多少 (转载)
两种DPcareer cup上面一题递归求解
请教将任意递归问题转换为尾递归的方法Careercup上看到的一个google的题目 下面有个人回复很好玩
相关话题的讨论汇总
话题: bottom话题: dp话题: 递归话题: top话题: down