由买买提看人间百态

topics

全部话题 - 话题: dp
首页 上页 1 2 3 4 5 6 7 8 9 10 下页 末页 (共10页)
u******s
发帖数: 3876
1
来自主题: FleaMarket版 - DP的卡都没有收据啊
小额的骗子基本懒得骗, 现在的卡都是, 500, 1000, 5000, 6000 一张的, 这种还是闪把

DP虽然寄来一些“收据”,但那上面根本就没有卡号,谁也无法证明自己的DP卡确实是
从DP来的。比如我现在想卖一张Blockbuster的卡,我根本就不知道是从DP,EPG,还是
FFR来的,虽然我知道就是从这三个program里的某一个来的。我也没法提供准确的收据
呀。
还有必须一手的说法,比如某大牛,手下有一帮小弟专门供卡,大牛什么卡都收,然后
集中起来出售或者交换,这个算一手的还是二手的?他说是一手的,谁也没法证明不是
一手的啊。这个规定跟没有一样。
“不建议进行货币交易”,这不是自欺欺人嘛,GC交易就是货真价实的货币交易。
1000伪币值10美元吧,这不是卖官鬻爵嘛。还不如谁发个广告,上交20伪币呢,算
listing fee吧,顶一次10伪币,欢迎来顶自己的帖子。这样来收伪币既公平还能收得
多。老邢也可以开动印钞机了:-)
“明码标价”,那有价格以后再加上best offer,OBO,PM算不算明码标价呢?
ebay不道德交易可以去ebiz,staples coupon
F*******o
发帖数: 4216
2
来自主题: FleaMarket版 - DP的卡都没有收据啊
我改模板了,证明合法一手卡就行了
模板只是提供个信息,要填假的我们也没办法,买家自己去鉴定好了
加best offer,obo,pm的现在都删贴了

DP虽然寄来一些“收据”,但那上面根本就没有卡号,谁也无法证明自己的DP卡确实是
从DP来的。比如我现在想卖一张Blockbuster的卡,我根本就不知道是从DP,EPG,还是
FFR来的,虽然我知道就是从这三个program里的某一个来的。我也没法提供准确的收据
呀。
还有必须一手的说法,比如某大牛,手下有一帮小弟专门供卡,大牛什么卡都收,然后
集中起来出售或者交换,这个算一手的还是二手的?他说是一手的,谁也没法证明不是
一手的啊。这个规定跟没有一样。
“不建议进行货币交易”,这不是自欺欺人嘛,GC交易就是货真价实的货币交易。
1000伪币值10美元吧,这不是卖官鬻爵嘛。还不如谁发个广告,上交20伪币呢,算
listing fee吧,顶一次10伪币,欢迎来顶自己的帖子。这样来收伪币既公平还能收得
多。老邢也可以开动印钞机了:-)
“明码标价”,那有价格以后再加上best offer,OBO,PM算不算明码标价呢?
ebay不道德交易可以
A*********r
发帖数: 564
3
嗯,对的,他实现的是在M上的二分查找,不过跟我在DP版本给出的思路不太一样,也
不能直接用在那里。
不知道他给出的code到底针对的是DP版本还是非DP版本,呵呵。。
p*****2
发帖数: 21240
4
来自主题: JobHunting版 - 关于DP的问题

如果不用dp,要计算
f(i,j) sum from i to j
you have to sum them up, it takes time. imaging n is very large
using dp, it's just dp[j]-dp[i-1], very fast.
p*****2
发帖数: 21240
5
来自主题: JobHunting版 - DP与Greedy的题

是。因为做过很多类似的DP题,上来就往DP那里想了。做的时候才发觉DP帮助不明显。
但是测试用例也都过了,就提交了。这题证明greedy可以也得花一些时间。不是很直观
。如果只是有思路的话,还是会在greedy和dp只见纠缠。感觉比赛的时候很难掌握呀。
另外,上一下greedy的代码。
public class test2 {
static String s;
static int k;
static HashSet pairs = new HashSet();
static boolean isForbidden(char[] arr) {
Arrays.sort(arr);
return pairs.contains(new String(arr));
}
static int Play(String str) {
int count = 0;
int count1 = 0;
int count2 = 0;
int j = 0;
for (int... 阅读全帖
w****x
发帖数: 2483
6
来自主题: JobHunting版 - DP感受 (高手请绕行)

说的不错.我想补充一下:
Iteration能完全代替recursion的只有tail recursion或用栈.
题目做多了很容易感觉出哪题需要用到DP,很多地方不一定要从公式推出.
DP不明显的问题上来说, 需要仔细观察你的解法中是不是有 "重复计算", 把"重复计算
"用数据结构存储最优子结构就可以了.
有的DP可以继续化简空间复杂度, 比如LCS可以把空间复杂度O(n^2)减少到O(n),因为第
n步的DP只 和前一步(第n-1步)的最优子结果有关, 从公式上也可以看出F(n)只和F(n-1
)有关.
w****x
发帖数: 2483
7
来自主题: JobHunting版 - DP感受 (高手请绕行)

说的不错.我想补充一下:
Iteration能完全代替recursion的只有tail recursion或用栈.
题目做多了很容易感觉出哪题需要用到DP,很多地方不一定要从公式推出.
DP不明显的问题上来说, 需要仔细观察你的解法中是不是有 "重复计算", 把"重复计算
"用数据结构存储最优子结构就可以了.
有的DP可以继续化简空间复杂度, 比如LCS可以把空间复杂度O(n^2)减少到O(n),因为第
n步的DP只 和前一步(第n-1步)的最优子结果有关, 从公式上也可以看出F(n)只和F(n-1
)有关.
f*****7
发帖数: 92
8
来自主题: JobHunting版 - DP感受 (高手请绕行)
DP的定义是递归的
我们要得到原问题的最优解,就得先算出若干个子问题的最优解,然后extend到原问题
。我们不断地把大问题归结为若干个小问题,最后就是解决base case。这种思维方式
by nature就是递归的思想。----最优子结构
对于多个大问题,要解决它们所用到的子问题可能有重复。所以我们需要用cache记录
已经计算过的子问题,如果该子问题被解决过了,直接从cache中fetch子问题的解。如
果该子问题没有被解决,那么就解决这个子问题,并且将solution存在cache对应的
entry里。----重复子问题
这两个是DP的重要性质。
CLRS对于DP的算法有两种
1. Top-down recursion with memoization
这种写法就是递归,用数组保存子问题的solution。
好处在于解决某些大问题,并不需要tabulate所有的子问题的时候,我们可以节约计算
时间,类似lazy evaluation。子问题只有在需要的时候才会被计算。第二个好处是直
接从定义出发,递归结构清晰,易于调试。
坏处是递归函数需要OS维护stack frame,如果问... 阅读全帖
g**********y
发帖数: 14569
9
来自主题: JobHunting版 - 这题也可以DP 解吧?
定义dp[] = new int[MAX_SUM]; dp[i]表示用数组a[]可以生成sum = i的办法次数。
dp[i] = sum(dp[i-a[j]]) (j=0..a.length)
O******i
发帖数: 269
10
来自主题: JobHunting版 - 讨论CAIWU那道矩阵DP题的思路?
和一个美国人吧。给一个矩阵和一个数k,要算另外一个矩阵。新的矩阵的每个位置是
老矩阵里面每个对应位置位中心边长为k的小矩阵的平均。用DP算法可以做到N^2。然后
实现这个算法。写了三个函数。
在火车上睡觉的时候想了个解法,不知道对不对。
这个题的背景实际上是二维数字图像处理的卷积滤波。这里是求平均,也可以求最大,
最小以及median, 其实也就是二维的离散拉普拉斯算符。
其实可以先考虑一维的情形。难点是如何用空间换时间,不需要每次都对k个数都重新
求和。对一维数组A, 如果构造辅助数组B, 使得
B[j] = A[0] + A[1] + ... A[j]
则A[m] + A[m + 1] + ... + A[m + k - 1] = B[m + k - 1] - B[m - 1],可以O(1)时
间求得,而不用O(k)。
构造B的过程是DP, 类似Fibonacci的DP构造。
扩展到二维也是一样的,二维数组B每个元素的值,是二维数组A的左上顶点元素到右下
和B那个元素位置对应元素的子矩阵的和。
构造B的过程也是DP, 只是递归方程比一维情形稍微复杂些,是两个矩阵相加,减去相
交部分... 阅读全帖
j*****y
发帖数: 1071
11
来自主题: JobHunting版 - scramble string 怎么用dp 阿?
二爷我发现一个问题,考虑剪枝的话,这种情况 recursive 比 bottom-up dp 有效
recursive的话,当发现一个 substring不匹配的话,不用往下做了,
可是dp是 bottom up, dp 发现一个 substring不匹配的话,还得继续往上做,
我刚才试了一下 dp里面也考虑剪枝,速度还是跟不上 剪枝了的 recursive
g**G
发帖数: 767
12
DP一般你会写出最优的子问题的递归方程对吧,其实就是递归
只不过一般DP是自底向上的,Recursion+cache是自顶向下的,写的顺序不一样
DP效率高,但理解起来可能比较困难
Recursion+cache的话,想起来比较顺溜,但是其实虽然中间结果cache了,但重复的
function call还是太多了,比dp效率低
s********u
发帖数: 1109
13
是的。一般dp能解决的,recursion(可以用memoization辅助)都能解决,只是一个
bottom-up,一个top-down。我想观察的就是什么样的问题用dp“方便”解决。
目前的结论是,如果这个问题的起点和终点都是“收敛”的(就算中间过程有多么发散
),那么通常方便用dp解决。例如unique path ii或者word break。
如果有一端是发散的(相对),那么用dp就比较难解决了。例如DFS(path sum),八
皇后。
s********u
发帖数: 1109
14
嗯,在理论上我是这么总结的:
**Divide and conquer :** 将问题分成几个部分,每一部分问题互相不重叠,假定每
个部分都可以得到解决进行递归调用,合并每一部分的结果。例如Merge Sort,Quick
Sort。
**Dynamic Programming**:对于具备最优子结构以及子问题重叠特性的问题,尽可能
不重复计算每个subproblem,将计算结果存储下来,以确定后驱问题的结果。与贪心算
法的区别是,在计算后驱问题时,可能会reconsider前驱问题的解,从而改变全局path

**Greedy Algorithm** : 当前问题的最优解只取决于前驱问题的最优解,即局部最
优解推广至全局最优解。如Dijkstra算法。
**Backtracking**: 一种暴力(穷举)的深度优先搜索法,直至检索到节点空间的尽
头。Tree或Graph的DFS,是backtracking的special case。
但实际上很多问题就算满足dp的条件,用dp却非常繁琐,比如8皇后问题,或path sum
问题。是可以用dp做,但实际上没必要。用b... 阅读全帖
D*******y
发帖数: 4252
15
Mini DP to DVI/HDMI有active和passive之分,不知道mini DP to DP是不是也有?
谢谢!
y******4
发帖数: 482
16
来自主题: Hardware版 - 以前说的显示器通过DP接口串联
每台显示器有一个DP in一个DP out,这样显卡只配一个DP接口就够了,不玩游戏的话
用主板带的DP接口就可连接多个显示器。现在这种说法不提了?
g***i
发帖数: 4272
17
来自主题: Hardware版 - DP port怎么就没有流行起来?
你想说的是dp还是mini dp?
现在显卡上主流不都是dp么?好点的显示器也都是dp
T*********e
发帖数: 39815
18
☆─────────────────────────────────────☆
njupeer (小虫) 于 (Tue Dec 12 16:20:38 2006) 提到:
我前天order两个package寄给版上一著名ID(他应该已经被DP BLOCK了)。
昨天卡没寄出(看前帖),中午打电话去问,说没事。
刚才发现membership被cancel了,现在还不知道DP是不是今天把卡寄了后Cancel.
注意了,为了安全,不要寄给其他的地址!!!!
☆─────────────────────────────────────☆
james54321 (james) 于 (Tue Dec 12 16:23:59 2006) 提到:
不会把,我都收到过20 多个单子从不同的人那儿. 我的地址也是BL. 而且我还用假地址
加入,然后让DP运到我的真地址,都好好的.多半是你打电话被review了.Never call
rule.

☆─────────────────────────────────────☆
htchen (妖魔) 于 (Tue Dec 12 1
b***l
发帖数: 196
19
来自主题: GiftCard版 - [合集] 被dp cancel membership了!
☆─────────────────────────────────────☆
dragonman (熊熊 & 投资版的牛牛) 于 (Sat Nov 3 15:21:55 2007) 提到:
问一下,在一个地址被cancel过,dispute了信用卡,结果另外一个地址的也是用俺的名字
的dp program被全部cancel了,俺这个地址没有任何违规操作.大家认为可能吗? dp会迁
怒于同名不同地址的program?还是有其他什么原因??
☆─────────────────────────────────────☆
sleeping (此ID重新启动) 于 (Sat Nov 3 15:24:57 2007) 提到:
ft. 你居然说“俺这个地址没有任何违规操作"

☆─────────────────────────────────────☆
busby (向意神医致敬) 于 (Sat Nov 3 15:26:57 2007) 提到:
dispute cc了你还想再玩dp?
☆────────────────────────────────────
M*******r
发帖数: 36
20
来自主题: GiftCard版 - DP卡 DHL mail missed, help
DHL shows the package was deliveried on the 8th, but it never shows up in my
address. called DP, they need me to wait 10 days to start processing my
case.
what will DP do after 10 days, after the cards been used by somebody else.
Will DP refund all my money?
anyone has experience, please share, thanks!
c********g
发帖数: 15629
21
来自主题: GiftCard版 - 买DP GC时信用卡的问题
Amex 买DP GC时总有问题,看来Amex对DP很不友好。Citi就好得多。
我注册时用Amex,购买是用Citi,为什么呢?Amex经常把CL降到很低比如500,而我们
买卡需要较高的CL比如5000。如果Amex突然降低CL,DP没法charge月费,就会自动
cancel program,那20%就拿不回来。所以为了避免麻烦,我注册的信用卡和买卡的信
用卡不是一张。
k*****y
发帖数: 86
22
第一次(2月)买卡就被寄丢了,但收到20%的refund,后来通过信用卡公司把付的钱要了回
来,但是目前DP给我的20%的refund还没收回去,请问象这种情况:
1.DP 20%的refund他们会自己收回去的吧?(他们已收到我的affidavit of loss)还是需
要我向信用卡公司要求退给他们.
2. 想退出DP,需不需要等到他们把自己的20%REFUND拿回去之后再退出呢?
(主要是担心退出后没了ID,如果有啥问题联系不了他们,他们客服的电话不是都要ID的
吗)
多谢指教!
k*****y
发帖数: 86
23
2月买卡被寄丢了,但收到20%的refund,后来通过信用卡公司把付的钱要了回来,但是好
几月过去了DP给我的20%的refund还没收回去,现在想退出了,请问象这种情况:
1.DP 20%的refund他们会啥时自己收回去啊?(他们早已收到我的affidavit of loss,
和他们也联系确认过)还是需要我主动向信用卡公司要求退给他们.
2. 现在可以退出DP吗?需不需要一定要等到他们把自己的20%REFUND拿回去之后再退出
呢?
(主要是担心退出后没了ID,如果有啥问题联系不了他们,他们客服的电话不是都要ID的
吗?)
多谢指教!
g*******y
发帖数: 1930
24
来自主题: JobHunting版 - DP怎么搞,学不太会啊

入门就看看CLRS,习题独立做完,如果不愁时间紧迫还可以做做其他的算法教科书的习
题。记得有个mit的
某个网页上有一套DP的题,我觉得难度比较合适,比教材习题难点,比竞赛低点,还有
视频语音讲解,不过
我没收藏这个链接,大家动手baidu吧。
想再提高的话看看刘汝佳的书里讲DP那部分。耐心啃完一小半的话,你基本上就会期盼
面试考到DP了。
A*********r
发帖数: 564
25
受到大虾的指点,本题除了DP算法,还有非DP的简单算法, 我的理解如下:
思路就是利用给定的数组范围确定pair distance的最大值和最小值,在这个范围里寻找一个最大的半径X,使得这个半径有K个元素两两距离不小于X;但所有比这个半径大的数,都只有少于K个元素的子集。
这个的算法复杂度是O(MN), 如果还要继续优化的话,就是在查找X的时候用上binary search, 把算法复杂度降为O(MlogN)。(当然前提也是要sort数组先O(M*logM)或者O(M))。
min=0;
max=N;
while(min {
x=(min+max)/2;
count=1;
prev=a[0];
for(i=1;i {
if(a[i]-prev>=x)
count++;
if(count>=k) break;
}
if(count else min=x;
}
==================================
A*********r
发帖数: 564
26
嗯,谢谢,这个比DP好理解多了,除非出题人故意刁难说N很大,否则这个时间复杂度
肯定比DP好啊。。
E********a
发帖数: 124
27
来自主题: JobHunting版 - DP题目过时了吗?
貌似好久不见有真题问DP的?貌似问DP偏难了???我个人挺喜欢DP题的,但是总担心
如果面试的人不是
fresh grad,是不是太难了些
d*******i
发帖数: 117
28
来自主题: JobHunting版 - 问个color tree的DP问题
"
Suppose we are given a rooted tree T with n leaves and m non-leaf nodes.
Each leaf is colored with one of k < n given colors, so several leaves can
have the same color. We need to color each interior node of T with one of
the k given colors to maximize the number of edges whose (two) endpoints
are colored the same color.
We can solve this with a DP algorithm that runs in O(mk) time. Let V (v,
i) denote the optimal solution value when the problem is applied to the
subtree rooted at node v, and ... 阅读全帖
c***g
发帖数: 472
29
来自主题: JobHunting版 - 关于DP的问题
我在看DP问题的时候,碰到了两个题目,很是疑惑
1 给你一个整数,不同的coin,然后求最少多少个coin可以得到这个整数。
我的疑问是,这个题目需要DP么?假设coin 是1,3, 5, 给定17,直接先除以5,
然后剩下的除以3,然后剩下的除以1,不就行了么?这样的算法得到的答案有错误么?
2 给你一个整数数组,有正有负,求连续的数的最大的和。
这个题目不是有一个n的算法么?需要DP么?
谢谢了
c***g
发帖数: 472
30
来自主题: JobHunting版 - 关于DP的问题
谢谢,那如何判断什么时候用贪心,什么时候用DP呢?
或者是不是贪心会有不work的时候,但是DP一定work?
有没有什么情况贪心work,但是DP不work呢?
p*****2
发帖数: 21240
31
来自主题: JobHunting版 - DP与Greedy的题
前两天有人问DP和Greedy的区别,今天做了一道题不错。我先用DP解,当时感觉有点别
扭,因为觉得好像有条件没有用上,结果超时。后来才意识到这题是Greedy. 想感觉一
下DP和Greedy的可以练练。
Sergey attends lessons of the N-ish language. Each lesson he receives a
hometask. This time the task is to translate some sentence to the N-ish
language. Sentences of the N-ish language can be represented as strings
consisting of lowercase Latin letters without spaces or punctuation marks.
Sergey totally forgot about the task until half an hour before the next
lesson and hastily scribbled some... 阅读全帖
p*****2
发帖数: 21240
32
来自主题: JobHunting版 - DP感受 (高手请绕行)

应该还是练得少。我觉得当时我写文章的时候推递推公式还经常需要从topdown开始入
手。现在碰到DP的话,基本就不需要那个思维过程了。一般的DP推公式还比较自然。只
是发现对于DP的初始化还不得心应手,需要化时间考虑,有些题一下还不能做对。看看
再过一段时间有没有提高了。
g****y
发帖数: 240
33
来自主题: JobHunting版 - 究竟什么定义了DP
18.11 不是DP。
pre_processing的过程是DP,但是主程序不是DP,就是一般的brute force。

纳。
j******2
发帖数: 362
34
来自主题: JobHunting版 - 究竟什么定义了DP
那就是说,DP问题必须是最优化问题。像在有路障的格子中找有多少种路径,一个
boolean expression有几种打括号以得到true,8皇后,running up stairs...这样
count ways的题,就都不可能是DP了,只能算是有memoization的recursion
按照最优化子问题的标准,150这本书的第九章,Dynamic Programming and Recursion
里的11个问题没有一个是符合的。只有17、18章有两题算DP。
j******2
发帖数: 362
35
来自主题: JobHunting版 - 究竟什么定义了DP
不好意思,确实有点钻牛角尖了。因为没学过所以看了看CLRS一不小心跑题了。
再啰嗦一句,CLRS讲Greedy同DP一样最关键要素是optimal structure for subproblem
,只是greedy先make a choice for this step,再解决subproblem;DP则要根据子问题
来make current choice。所以我觉得所有“求有几种。。。解法”的问题都不是最优
化问题,都不算DP或Greedy。
还是回到正轨继续做题。
m***k
发帖数: 946
36
来自主题: JobHunting版 - 这道题DP怎么做阿
你这个应该是错的。
因为i+1==j时,你的转换方程中会同时出现:dp[i+2][i+1]和dp[i][i+2],也就是对于
dp[a][b], 同时出现了a>b和ab和a 。除非特别定义另外一种情况的意义,否则这个方程是不成立的。
p*****2
发帖数: 21240
37
来自主题: JobHunting版 - 感觉leetcode的OJ有点太偏重DP了

DP熟了之后反而简单。因为代码比较雷同,不太容易犯错误。我一般能用dp解的也喜欢
用dp
g****x
发帖数: 223
38
来自主题: JobHunting版 - 好紧张,碰到DP强人了
DP的一个小小的应用是HMM。楼主不妨一试,即考了DP,编成,又考了概率,如果对方
答不出,楼主又可以显示自己高深的理论数学功底,让他崇拜吧。这年头,想考倒一个
人还不容易?DP不成,咱们可以来LP,LP不成,再来数论或FFT,。。。MIT的大白书上
有的是这样的题。再不成,自己读读SODA/STOC上的文章,然后去考人,让他30分钟
内提出个大概想法,如果想不出,证明此人"CANNOT THINK LOUDLY"。
p*****2
发帖数: 21240
39
来自主题: JobHunting版 - 好紧张,碰到DP强人了

这个还没做过。初步看需要存sum[i][j]
这样
dp[i][j]=max(A[i]+sum[i+1][j]-dp[i+1][j], A[j]+sum[i][j-1]-dp[i][j-1])
一会儿做做
j*****y
发帖数: 1071
40
来自主题: JobHunting版 - scramble string 怎么用dp 阿?
二爷你有没有比较recursive 和 dp 的时间区别,我刚才比较了一下,有点 confuse
跑那个large test cases
recursive 花了 36 milisec
dp 花了 216 milisec
dp 比 recursive 慢了 7倍阿。
看来 c++ 创建 3维的矩阵很慢?

scramble
H****s
发帖数: 247
41
来自主题: JobHunting版 - scramble string 怎么用dp 阿?
你的程序再加个cache就是 DP 了, 因为根据二爷的定义,recursion + cache 就是
DP 不过DP不仅仅是recursion + cache.
不过这个帖子真够经典的,又学到了一个新概念 "recursion branch trimming" 不知
这个概念官方叫法是什么, 谁知道哪本算法书里有讨论啊?
J*****a
发帖数: 4262
42
看过第五版的人说说 是不是这样
她的所谓DP都是把中间结果存在一个hashTable里
下次算之前看看那里面有没有
但真的DP有两个要点
1)保存子问题的结果
2)子问题有序
但是作者几乎从没注意第二个问题 所有的还按递归算法那么算,就多加个hash
所以很多题依然是指数复杂度的 (部分题真DP是可以降到n^2或n^3)
大家觉得呢
s******r
发帖数: 65
43
来自主题: JobHunting版 - 要开始啃DP这块硬骨头了
哇,楼上的战友们已经推荐了很多干货了,赞啊。
我想先把算法导论上面的吃一遍,然后再看看这个
http://people.csail.mit.edu/bdean/6.046/dp/
之后过leetcode上的DP
最后过http://acm.timus.ru/problemset.aspx?space=1&tag=dynprog&sort=di或者是topcoder上的DPtutorial
现学现卖啊,嘿嘿。
有没有Leetcode上DP的list?
想单独拿出来自虐一下。。。。
s********u
发帖数: 1109
44
我看了careercup的书,上面说DP就是做recursion的时候把已经算过的结果cache一下
,可以在subproblems overlap的时候提高效率。
但我看好多人提到dp的时候,比如leetcode的unique path一题,往往是bottom-up,也
就是把subproblems的值存到数组里,然后用iteration来计算出problem的结果。
到底哪个概念更通用一点?如果面试官要求用dp,指的是哪一种?
因为第一种解释做起来很简单,就加个hashtable就行,要改成第二种解释的话还要把
recursion改写成iteration,就复杂多了。
s********u
发帖数: 1109
45
我的意思是那就不叫DP了吧?比如最简单的fibnacci
我用三个临时变量循环计算出f(n),这也叫DP?
有点搞糊涂了,因为careercup书上说的dp,似乎就是等同于大家所说的memoization...
s*****r
发帖数: 108
46
DAG 是有向无环图
有了 toposort 才知道应该怎样从前往后递推
否则的话得写记忆话搜索
所以进行 DP 通常这两种实现;知道了自底向上的顺序用递推
不知道又不想拓扑排序后再推就用递归 用这种形式感觉不怎么动脑子把转移方程放那
开头判断个边界就好了 好像显得没有递推实现高端
上面的回复大多不准确或者错误的
直到 jianglai 说到了本质 引入了拓扑排序好像蒙了一下 但把模型转化为 DAG 是
必要的 只是我们刚开始碰到的 DP 大都划分阶段显然 知道了推的顺序 其实在一些树
或图上的 DP 不容易递推实现 因为要么得先拓扑排序从边界开始向后推 要么用了巧妙
的实现方式那是非常值得一读的程序
b**********5
发帖数: 7881
47
来自主题: JobHunting版 - leetcode能不能多加点DP的题啊
现在加的题, 连我都会做。 我最差的就是DP,u know, dynamic programming, not
the other DP... 多加点DP, 就更好了。 谢谢。
y*****3
发帖数: 451
48
来自主题: JobHunting版 - leetcode上的DP题
太多了。。。据很多人说DP题面试的时候其实很少考,本菜鸟就想拿个普通公司的小
offer,不打算拿牛公司的大包袱,所以基本打算放弃DP题了,可是,leetcode上刷了
90多道题以后,几乎就找不到几道不是DP的了。。一用DFS就报超时,郁闷!
A*********c
发帖数: 430
49
来自主题: JobHunting版 - leetcode上的DP题
But you are going to be interviewed by 5 of them, right
What's the joint probability that NONE of them touches on DP?
As a result, DP's probability is not small.
I guess If someone is caught for not knowing DP, he is like to get a very
strong NEG.
So do you want to toss a coin or you want to control it?
首页 上页 1 2 3 4 5 6 7 8 9 10 下页 末页 (共10页)